Mobile Computing Weight, Diet, Nutrition, and Exercise Management System With Enhanced Feedback and Goal Achieving Functionality

ABSTRACT

An illustrative mobile computing device executing weight, nutrition, health, behavior and exercise application software serves as a simulated combination personal trainer and dietician/nutritionist for the user using comprehensive databases storing personalized health, nutrition and exercise information. A mobile computing device, such as a smartphone, executing such software monitors, tracks and/or adjusts caloric intake, energy expenditure taking into account nutritional information and behavioral factors. The mobile computing device receives food consumption, exercise-related, behavior and other input using speech input and the device&#39;s GPS subsystem to ease data entry burden on users and to promote continued long-term usage. The system rewards user goal achievement in an automatic, seamless manner, through, for example, downloading music, books, or other media. In illustrative implementations, the system assists users to make healthy food and exercise choices by using a comprehensive color code system to identify good choices, bad choices and those in between.

This application is a continuation of allowed U.S. patent applicationSer. No. 15/650,951, filed on Jul. 16, 2017, which is a continuation ofU.S. patent application Ser. No. 15/361,383, filed on Nov. 26, 2016, nowU.S. Pat. No. 9,728,102, which is a continuation of U.S. patentapplication Ser. No. 15/175,296, filed on Jun. 7, 2016, now U.S. Pat.No. 9,514,655, which is a continuation of U.S. patent application Ser.No. 15/047,817, filed on Feb. 19, 2016, now U.S. Pat. No. 9,378,657,which is a continuation of U.S. patent application Ser. No. 14/242,106,filed on Apr. 1, 2014, now U.S. Pat. No. 9,280,640, which is acontinuation of U.S. patent application Ser. No. 13/733,588, filed onJan. 3, 2013, now U.S. Pat. No. 8,690,578, which are hereby incorporatedby reference in their entirety.

FIELD OF THE INVENTION

The invention generally relates to a computing diet, nutrition andexercise tracking system and methodology. More particularly, theillustrative implementations relate to a mobile computing weight, diet,nutrition, behavioral, and exercise tracking system with enhanced dataacquisition functionality to ease tracking calories consumed andcalories burned through exercise while providing enhanced user feedbackfeatures to improve the probability of goal achievement.

BACKGROUND AND SUMMARY

Obesity has been a well-recognized serious health problem in the UnitedStates for decades, significantly contributing to shortening lives andincreasing medical expenses for millions of Americans. Many diseases,such as type II diabetes, hypertension, hyperlipidemia, heart disease,and others have been directly linked to obesity. Unfortunately, thethreat of a reduced lifespan, reduced quality of life and an enhancedprobability of suffering from comorbid diseases in the future is notsufficient for those who are significantly overweight to be successfulin reducing their weight and in maintaining such a reduced weight, and ahealthy lifestyle incorporating a consistent exercise program.

The causes of obesity are multiple and can be complex. Geneticpredisposition impacting metabolism and environmental factors such asdiminished physical activity often play a key role. For some individualsadditional psychological factors such as stress and depression andmedical conditions such as hypothyroidism, chronic pain and otherconditions that restrict physical activity or affect metabolism all cancontribute in varying degrees in causing obesity.

Given the complexity of obesity, there are many approaches to itstreatment. At the most basic level, treatment involves the manipulationof energy intake and energy expenditure. To lose weight one has to takein fewer calories than one expends. To attain this objective, dietslimiting the intake of calories are typically coupled with exercise toincrease energy expenditure and thus create negative energy balance.Along with this, however, when restricting calories one must be aware ofthe nutritional needs of the body. Healthy weight loss is best achievedwhen nutritional requirements of the body are fulfilled during theprocess of limiting caloric intake.

Since many individuals suffering from obesity also are afflicted withcomorbid medical conditions, the determination of appropriatenutritional intake, caloric restriction and exercise regimens shouldtake into account these conditions and, often, the medicationsassociated with them. Safety is of utmost concern when establishing anexercise regimen and in determining nutritional requirements making up adietary protocol. For example, an appropriate dietary protocol andexercise regimen for weight loss for a 60 year old morbidly obese maleindividual with hypertension, coronary artery disease and history ofheart attack would be very different than the appropriate protocol for a38 year old moderately obese female having type II diabetes treated withoral medications. Given these factors, it is recommended that protocolsfor weight loss including nutritional guidelines and exercise beconstructed by healthcare professionals including physicians,nutritionists and others.

In this country, there is significant variation in the approachesavailable to address obesity. Many commercial programs exist, such asWeight Watchers, that provide nutritional and exercise direction alongwith help to keep on track. There are many individual health careprofessionals that provide specific weight management services such asnutritionists, trainers, exercise physiologists, counselors,psychologists, nurses and physicians. In some areas, there are morecomprehensive programs available at multidisciplinary medical weightmanagement centers where medical management, nutrition, exercise andpsychological intervention are provided in a global, coordinatedapproach. Also, there are surgical approaches available offering anumber of procedures aimed at altering caloric intake and absorption.

In addition to services and programs, there are a myriad of weight lossproducts available. FDA approved prescription medications, herbalproducts and over the counter products to stimulate metabolism and toincrease satiety, prepackaged, low and zero calorie foods and beveragesand many other products are available to alter caloric intake. Exercisemachines, devices and videos are also available to encourage increasedenergy expenditure.

In the end, the success of individuals, whether it be in losing weightand maintaining the weight loss or any health enhancement endeavor ismost affected by their ability to make positive behavior changes and tomaintain those positive behaviors indefinitely.

Well known programs, such as Weight Watchers, have employed weight-lossmonitoring data processing systems that have been helpful toparticipants in this program. In recent years, weight-loss applicationshave become available for use with iPhones and iPads to assist dietersin successfully meeting their weight loss goals.

While existing weight-loss computing systems have a variety of usefulfeatures, such systems are typically cumbersome to use due in part tothe complexities of adequate data entry. The difficulties in variousdata entry steps in such systems are likely to discourage consistent useover a long period of time for many users.

Moreover, there is a need for a diet, exercise and behavioral monitoringsystem that provides the user with a structured system for addressingthe old adage “you are what you eat” in part by providing feedback inreal time to the user as to food consumed, exercise performed and/orprogress towards goal achievement. In illustrative implementations, suchfeedback includes nutritional and/or health information about food itemsto be consumed of which the user may be unaware. Armed with suchinformation, the user is then equipped to make an informed decisionwhether to eat a selected food item. With such a system, even those whoare not overweight (or suffering from any known illness) but who wish tostructure a diet that minimizes their odds of in the future sufferingfrom a variety of diseases linked to poor diet, have an opportunity todo so. Still others, who are not overweight but who suffer from highblood pressure, diabetes, lipid disorders, renal disease and perhapsvarious cancers, have an opportunity to meet their food consumption andexercise goals to take advantage of a diet and exercise protocol thathas been linked to helping control such medical conditions. Alsoindividuals in good health who may have very specific health and fitnessgoals such as bodybuilders, runners, martial arts enthusiasts and othersmay utilize such a system to help attain their fitness and health goalsby monitoring and tracking exercise, behavioral and nutritionparameters.

There is a need for an easy to use weight, nutrition, exercise andbehavior monitoring data processing system that, for example, simplifiesdata entry for food consumed and/or exercise modes of operation and/orbehavior parameters, while providing valuable health beneficial feedbackand rewards for behavior change and goal achievement. Former smokers andthose who are attempting to quit smoking have a dire need to eat in anutritionally sound manner, exercise as much as they are able, and berewarded for their efforts to stop smoking. Moreover, it is desirablefor such a system to, for example, dynamically adjust to changing userfood intake, exercise regimens and behaviors, to change user profilesand associated goals, and to appropriately generate medical warnings asneeded.

In practical effect, in illustrative implementations, the mobilecomputing device executing the weight, nutrition, health, behavior andexercise application software as described herein serves as a simulatedpersonal trainer, dietician/nutritionist, and physician's assistant forthe user while having access to massive amounts of personalized health,nutrition and exercise information. In non-limiting, illustrativeimplementations, a mobile computing device, such as an Iphone, isaugmented with a unique weight, nutrition, health, behavior and exercisetracking application and databases that provide enhanced user feedbackfeatures and automated data entry.

The illustrative implementations advantageously contribute to theability of users to maintain positive diet, nutrition and exerciselifestyle changes by monitoring, tracking and adjusting caloric intake,energy expenditure, nutritional information and environmental andbehavioral factors. Identifying behavioral issues and working to improvethem through prompts and recommendations are used to enhance andmaintain positive behavior change. In maintaining the positivebehaviors, weight loss and health improvement can be achieved andmaintained long term, resulting in significant improvement in quality oflife, self esteem, medical conditions and overall health.

In an illustrative implementation (or set of illustrativeimplementations), the mobile computing device receives food consumption,exercise-related, behavior and other input from various inputdevices/mechanisms using speech input and digital imaging technology toease the data entry burden on users and to promote continued long-termusage. In certain illustrative implementations, the system is designedto reward user goal achievement in an automatic, seamless manner,through for example downloading music, books, or other media to theuser's mobile computing device via the Internet.

As used herein, it should be understood that any feature identified asbeing used in one illustrative implementation, is contemplated as beingusable in any other illustrative implementation identified herein. Thus,merely because a feature is not expressly identified as being used in aparticular illustrative implementation should not be interpreted as anindication that it is not contemplated for use in that implementation.Similarly, any reference herein to “in an implementation/embodiment” orthe like should be interpreted as indicating a contemplation of use inany desired implementation. Further, reference to a feature or a set offeatures being used in “illustrative implementations” should not beconstrued as an indication that some or all of such features must beused in “all” implementations.

In an illustrative implementation, food consumption and exercise andother goals are set using input from a physician, and/or a nutritionist,and/or healthcare provider, and/or personal trainer, and/or the user,and/or another source. For example, a physician may provide input to setappropriate thresholds for the user including average calorie intake perday, grams of sugar intake per day, amount of exercise per day, etc.

In an illustrative implementation, a “select mode” display is generated.In such an illustrative implementation a wide array of mode select iconsare displayed to indicate, for example, a user profile mode for creatinga user profile that is modifiable and displayable, a diet selectionmode, a food data entry mode, an exercise data entry mode includingthose using the computing device's GPS functionality, a food purchasemode, a diet and exercise issue mode for addressing a range of issuesincluding user “behavioral” issues in comporting with a diet andexercise program, and various other modes.

One of various mechanisms used by the illustrative implementations toassist, motivate and encourage users to make good, healthy food andexercise choices is a color code system to identify good choices, badchoices and those in between. For example, in an illustrativeimplementation, the colors GREEN, LIME, YELLOW, ORANGE, and RED,respectively indicate relative values such as Best, Good, Okay, Bad, andWorst with respect to food and exercise choices.

In an illustrative implementation, for each food and exercise activitysupported by the system described herein, the system advantageouslyprovides color code feedback to the user with respect to (WRT) any andall of the many nutritional parameters monitored by the system whiletaking into consideration related health information from a user'sprofile.

In an illustrative implementation, for each food and each exerciseidentified by the user, a color code is displayed to the user anddynamically adjusted taking into account, for example, user weight,height, sex, age, health, goals, progress, etc. Such a color code systemaids in motivating the user to abide by color codes that areinternationally-recognized signals (e.g., “Go” on Green, “Stop” on Red)to select the foods or exercises that provide the greatest benefit (asindicated by the color Green in this example), to avoid the poor choicesthat provide the least benefit or may even be harmful (as indicated bythe color Red in this example), and to advance the color up from Red toGreen as soon as possible.

The color coding system used in illustrative implementations isdynamically tailored to individual users in real time. In anillustrative implementation, in generating color code feedback to theuser for use in the user's profile generation, the system adjusts thecolor coding taking into consideration the specific healthcharacteristic to which the user (or the user's physician, nutritionist,or personal trainer) is seeking to improve. For example, in anoverweight male user trying to lose weight, fruit is color coded Greenbut in the overweight female diabetic user who is trying to lose weightand improve her diabetes control, fruit is color coded Orange. Under avariety of circumstances, the same food may undergo a color change forthe same user. For example, with the diabetic user, after surpassing acertain amount of fruit in a day, fruit becomes Red due to the sugars infruit making them not as good for diabetics.

In illustrative implementations with respect to exercise, for a userwith significant arthritis in the knees and hips who is trying to loseweight, treadmill walking is coded Red while elliptical machine exerciseis coded Orange. However, for such a user, walking or swimming in a poolis coded Green.

In an illustrative implementation, exercise duration times are alsofactored in by color coding the activity based on the activity itselfand the time participating in the activity. In such implementations, toolittle or too much exercise time generate a less desirable color code,taking into consideration the user's health parameters (heart disease,arthritis, asthma, etc) and the user's goal (to lose/gain weight,improve strength, increase endurance, quit smoking, etc).

In practical effect, the system guides the user to make healthy choicesbased upon nutrition and health factors tailored to the user, which theuser may be unaware of or otherwise avoiding.

In an illustrative implementation, a wide variety of modes may beentered from a “Select Mode” display screen. Initially, a userprofile-related mode is entered to permit a user to create, modify, ordisplay his or her user's profile. Entry into such a mode may, forexample, enable the user to immediately access his/her current weightloss, calories consumed, calories burned, and other exercise orhealth-related data to get real-time feedback on his/her progress todate.

In an illustrative implementation, a diet selection mode permits a userto select a diet to be associated with the user's profile that may beused to target one or more medical conditions of the user. In anexemplary implementation, upon the selection of the “diet selection”mode, an array of icons are displayed identifying various diet regimens,at least some of which are targeted to address weight loss, one or moreserious medical concerns, and/or other specialized dietary needs such asthose of athletes. For example, one or more icons zone in on a diettailored to addressing the needs of diabetics, cancer patients,gluten-intolerant individuals, individuals with high blood pressure, orindividuals with other major medical conditions, who are attempting tostop smoking or drinking, etc.. In an illustrative implementation, theapplication generates selection of a diet by accessing an associateddatabase that contains pre-formulated breakfasts, lunches and dinnerstargeted to comport with the selected diet and associates such mealswith the user's profile.

In an illustrative implementation, one of such icons available in thediet selection mode would, for example, enable selection of the “GOMBS”diet (or a variation thereof) promoted in the mass media by Dr. JoelFuhrman. In such an implementation, variations of meals following thespirit of the GOMBS diet as identified in Dr. Fuhrman's book “Secrets toHealthy Cooking” are stored in one of the databases used in theillustrative implementation. GOMBS is an acronym for Greens, Onions,Mushrooms, Beans & berries, and Seeds & nuts. Such foods have reportedlybeen associated with healthier blood vessels/blood flow, enhanced weightloss, reduced suffering from certain cancers, anti-diabetic and otherbeneficial properties.

In an illustrative implementation, entry into a food consumption dataentry mode (Food mode) permits the user to enter into the system, foodthat is consumed either in or outside a user's home in a manner that isas user-friendly as possible. Over a period of time, users tend to eatone or more of the same favorite meals for breakfast, lunch, or dinneron a consistent basis. Taking advantage of this habituated tendency, thesystem can learn a great deal about the user's present nutrition profileby initially asking him/her to declare his/her Top 5 favorite meals. Inan illustrative implementation where the food is nutritional and low incalories, a user works with, for example, a physician/nutritionist/otherconsultant to select various breakfast, lunch, and dinner combinationsthat have beneficial amounts of nutrition (e.g., low in calories,sugars, saturated fats, sodium, etc.) that are then stored in the user'sprofile (or a database associated therewith). For example, a user whohas chosen to eat a breakfast of Cheerios, with raspberries,blueberries, and skim milk may have an associated user profile havingsuch a breakfast identified as “breakfast number 1” and storing (orotherwise identifying by pointing to a database storage location) a widearray of nutritional information for such a breakfast including, forexample, calories and sugar content. In such an implementation, usingspeech recognition software, the system recognizes, for example, theuser stating “breakfast number 1” in response to a verbal or displayedprompt to describe the breakfast to be consumed. In certain otherillustrative implementations, a touch screen display (or otheridentification) of a particular food may be used to obtain userconfirmation that the speech recognition software accurately decoded thefood he/she identified.

After speech recognition software determines, for example, that the userhas stated the particular food consumed and the food amount, the systemthen determines the caloric, nutritional, and other health-relatedcharacteristics of the food consumed which is stored and analyzed asdescribed herein. In the above example, a Green color code is displayedto the user consuming such a breakfast number 1. Additionally, incertain illustrative implementations, image processing technology may beutilized to identify the food and the caloric and othernutritional/health-related characteristics of the food consumed. Thissame user/system interactive process is likewise used for the user tostore and later specify other favorite meals such as “Lunch number 3”,“Dinner number 5”, etc.

In an illustrative implementation, a user's exercise activities aretracked and analyzed. In one of various exercise modes, GPS technologyembodied in the user's computing device is used to automatically acquireuser coordinate position data using the GPS receiver associated with themobile computing device, and the system monitors the time over whichrunning, walking, or bicycling exercise activities have occurred. Afteruser entry of the type of exercise being undertaken and afterdetermining the distance traveled during the monitored time, the systemgenerates an estimate of the number of calories burned by the userduring such GPS-tracked activity.

In an illustrative embodiment, other exercise modes may be entered inwhich, for example, speech analysis software is utilized to enable theuser to input a specific type of exercise: for example, variousexercise-related “tags” are stored in a newly-created exercise recordidentifying the duration, resistance, rest interval, and othercharacteristics of the exercise. Under circumstances where variousconventional health club exercise machines are used, the system storesthe generated output of such exercise machines, such as ellipticalmachines, stationary bicycle machines, stepper machines, etc., thatgenerate, for example, the number of calories burned during an exercisesession.

Further, in other illustrative implementations, a food purchasing modemay be entered to guide the user during food shopping or at a restaurantto determine whether a food product being purchased is consonant withthe user's profile and associated goals and health issues. In anillustrative implementation, a database is accessed to identify, wherepossible, alternative foods of the same food type to enable a user, forexample, to select a desired food and yet cut down on, for example, theamount of sugars, fats, sodium, or calories consumed.

Further, in another illustrative example, a diet/exercise issue mode maybe entered where the user selects a category corresponding with abehavioral issue that may be impacting diet or exercise success. Theuser is then prompted to answer questions regarding the behavioral issueraised by the user's problem. The responses are analyzed by the systemand the system provides the user with recommendations to improve thebehavior: e.g., to eat an apple at 3 PM in response to a user queryregarding hunger issues in the middle of the afternoon.

Additionally, in illustrative implementations access to external serversand databases is advantageously utilized to provide a behavior enhancingreward system designed to motivate users to achieve their goals throughrewards based on goal achievement and/or progress towards goalachievement. In an illustrative implementation, any diet, exercise,health or nutritional goal being met may trigger an award generation,including weight-related goals, exercise-related goals and smokingcessation-related goals. A reward may be embodied in a wide variety offorms including, without limitation, automatically downloaded music,movies, digital versions of TV shows, music videos, cash, discounts atmovies, restaurants (particularly those that include a wide range ofhealthy alternatives), discounts at sporting events, mobile games,mobile gaming currency, other mobile applications, etc. In anillustrative implementation, a user's types of reward preferences, e.g.,music, electronic book, etc., are stored in the user's profile to guidethe system in generating and downloading an appropriate reward.

These and other features of the illustrative implementations will becomeapparent from a review of the drawings of which:

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a non-limiting, illustrative mobilecomputing weight, exercise, nutrition tracking and reward system;

FIG. 2A is a flowchart delineating the general sequence of operationsperformed by the mobile computing device during performance ofillustrative weight tracking, analysis, and user feedback methodology;

FIG. 2B1 illustrates various nutrition and exercise-related modes ofoperation of the mobile computing device when performing the weight,exercise and nutrition tracking methodology described herein;

FIG. 2B2 is an illustrative diet selection screen that is generated whena diet selection mode icon 52 is selected by a user;

FIG. 2C illustrates a color-code rating scale, with exemplarythresholds, for each food eaten, each nutrient consumed, each exerciseperformed, and relative level of goal achievement by the user;

FIG. 2D1 illustrates macronutrients considered essential to the humanbody, plus an identifying color code level for each macronutrient;

FIG. 2D2 illustrates micronutrients considered essential to the humanbody, plus an identifying color code level for each micronutrient;

FIG. 2E provides an example of how color code ratings from Red to Greencan be derived for any given nutrient, such as vitamin C, from a 100%baseline established using certain widely-available foods for thatnutrient;

FIG. 2F illustrates a top nutritional foods database identifying varioustop natural foods and a variety of their best peers within the same foodfamily;

FIGS. 2G1 and 2G2 are an illustration of a recommended daily intake(RDI) database that discriminates the calorie needs of various usersbased on, e.g., their body weight, gender, age, and level of physicalactivity;

FIGS. 3A and 3D are an illustrative flowchart depicting an exemplarysequence of operations underlying the creation of a complete initialUser Profile, including user ID and Health data;

FIG. 3B shows an exemplary process for FIG. 3A by which the systemcaptures, stores, and updates food data in the user's Food Database on awide variety of foods for breakfast, lunch, and dinner, as well as eachsnack and drink outside of meals;

FIG. 3C shows an exemplary data matrix for the food database in FIG. 3Bthat enables a user to declare his/her Top 5 favorite meals forbreakfast, lunch, and dinner, as well as snacks and drinks, displayingpopular food items/add-ons for each matrix cell to encourage userparticipation in every meal category;

FIG. 3E shows an exemplary process for FIG. 3D by which the systemcaptures, stores, and updates exercise data in the user's ExerciseDatabase on a wide variety of exercises performed by a user daily orperiodically, or otherwise for playing sports, non-competitiveconditioning, or weightlifting;

FIG. 3F shows an exemplary matrix for the exercise database in FIG. 3Ethat enables a user to declare his/her Top 5 favorite exercises forsports, conditioning, and weightlifting, as well as daily and periodictasks, displaying popular exercises/tags for each matrix cell toencourage user participation in every category;

FIG. 4A is an illustrative flowchart for the system Food Mode depictingan exemplary implementation of 4 different ways the user can accesshis/her Food DB to view/modify its contents or add new items eaten tothe DB;

FIG. 4B1 and 4B2 illustrate macro- and micro-nutrients in the USDANutrient Database;

FIG. 4C shows a comparison of 2 examples of popular Fast Food items (Redlevel 1) side-by-side with 2 examples of healthy Salmon/Turkey (Greenlevel 5), where all nutrient data was extracted from the USDA NutrientDB of FIG. 4B1 and 4B2;

FIG. 5A is an illustrative flowchart for the system Exercise Modedepicting an exemplary implementation of 4 different ways the user canaccess his/her Exercise DB to view/modify its contents or add newexercises to the DB as he/she performs them;

FIGS. 5B1 and 5B2 show numerous examples of calories burned viaactivities/exercises, excerpted from the Compendium of PhysicalActivities (researched/updated for NIH by Arizona State Univ 2012)which, taken together with an illustrative calorie coefficient, form anillustrative system Activity Database;

FIG. 6A is a flowchart delineating the sequence of operations performedin an illustrative implementation during food purchase mode at a grocerystore or restaurant;

FIG. 6B is an illustrative flowchart delineating the sequence ofoperations involved in a behavioral data acquisition mode;

FIG. 6C is an illustrative risk chart depicting the health risks frombeing overweight and/or obese.

FIG. 7A1 illustrates a database format specifying a record format totrack user weight loss (gain) across time toward multiple deltasubgoals, leading to an overall final goal;

FIGS. 7A2 -7A4 provide 3 illustrative examples that use FIG. 7A1 deltasubgoals to track weight loss from obese to overweight, from overweightto healthy weight, and from healthy to ideal weight;

FIGS. 7B1 and 7B2 show illustrative DB register formats for each userfood eaten and exercise done (for the Food DB in FIG. 4A and theExercise DB in FIG. 5A, respectively);

FIGS. 7B3 and 7B4 show companion DB register formats for user Daily andDelta Records, which accumulate Cals In/Cals Out to calculate weightloss (gain) on a daily and cumulative basis, respectively, to show userfood, exercise, and weight loss (gain) history from start to currentdate;

FIGS. 8A-8C show an illustrative user profile record format that may beused in an exemplary implementation; FIG. 8A delineates an illustrativeuser ID and user Health Data List that includes all related data itemsdeclared in the User Profile flowchart of FIG. 3A;

FIG. 8B shows an illustrative variable-length record format for allNutrition data items declared in FIG. 3A, repeated cyclically for eachFood/Add-on eaten/declared by the user in FIG. 4A;

FIG. 8C shows a variable-length record format for all Exercise dataitems declared in FIG. 3D, repeated cyclically for each Exercise/Setperformed/declared by the user in FIG. 5A;

FIG. 9 is an illustrative flowchart of a utility subroutine dedicated toperforming lookups on the system Nutrient DB or Activity DB, in order tocalculate calories associated with food or exercise, respectively, andif appropriate, to update the Daily/Delta Records of FIGS. 7B3 and 7B4,respectively:

FIG. 10 is an illustrative format for displaying calories to the user aspairs of “expected values” versus “actual values” in 3 areas: netcalorie accrued today, net calories accumulated from day one to date,and goal weight vs. actual weight, using the Daily/Delta Records ofFIGS. 7B3 and 7B4;

FIG. 11 is an illustrative flowchart for reviewing and/or adjusting auser goal that is triggered by any incremental progress indicated by theuser toward that goal, including any food eaten or any exercise done,and further including any new weight reported or any food/exerciserestriction violated;

FIGS. 12A-12B show tables correlating body frame (small, medium, large)of a man or woman with either a user's wrist size or his/her elbow size,respectively;

FIG. 12C shows a chart correlating waist size vs. height withunderweight, healthy weight, moderate overweight and severe overweight(obese), as defined by the 4-zone USDA chart (1995) reflecting currentBMI thresholds;

FIG. 13A shows an overlay of profiles for both men and women in theworld-standard Met Life Table (updated 1983) on the 4-zoneworld-standard BMI Chart (by the USDA 1995) that reveals how far apartthe two baseline standards are for tall women and all men, as confirmedby an additional overlay of men and women (average height/weight) from 5modern industrialized countries;

FIG. 13B shows how the Met Life profiles of FIG. 13A can be rotatedaround a common pivot point with the USDA Chart to yield a morerealistic healthy-weight model for all men and women.

FIG. 13C1 illustrates an ideal weight database that allows the system toprovide an ideal weight matched to a user's height for both men (leftside) and women (right side);

FIG. 13C2 is a chart showing the step-wise linear MIN/MAX boundaryequations used to define the limits of ideal weight for men and women,as tabulated in FIG. 13C1 and charted in FIG. 13B; and

FIG. 14 is a flowchart delineating the sequence of operations performedin an illustrative implementation during reward processing.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of a non-limiting, illustrative mobilecomputing weight, food consumption, nutrition, and exercise trackingsystem with enhanced data entry and user feedback. As schematicallyillustrated in FIG. 1, a mobile computing device 1 receives foodconsumption and exercise input from a potentially wide range of inputdevices/mechanisms 4, using, for example, a microphone 9 for speechinput and a digital imaging device (such as camera 10) associated withthe mobile computing device 1. The mobile computing device 1additionally receives user exercise-related input using an internal GPSreceiver 5 and from various exercise equipment 12 not involving GPS dataas explained further below.

As will be explained further below, mobile computing device 1communicates via the Internet with a server 14 that includes associateduser profile, weight tracking, exercise/activity databases, andfood/nutrition databases as described in more detail below.

Additionally, mobile computing device 1 also communicates via Internet11 with a rewards server 16 that includes an associated rewards databasethat in turn communicates with a music, video and entertainment server17 that is utilized during reward processing to provide additionalmotivation to users for enhancing the likelihood of goal achievement. Itshould be understood that, while servers 14 and 16 andphysician/nutritionist/personal trainer/data processing system/server 20are represented by multiple computers having multiple associateddatabases, such systems may be implemented, if desired, at one dataprocessing system location using one data processing system having onedatabase.

Mobile computing device 1, in an illustrative implementation, may beimplemented by any of a wide array of commercially available,conventional mobile computing devices, including, for example,conventional smart phones, such as Apple's iPhone 4s or 5, or Samsung'squad-core processor-based Galaxy S3, a tablet computing device such asApple's iPad, or any of a number of laptop computers. In certainillustrative implementations, such mobile computing devices may bemodified to include a pedometer 13 that provides user step-related datato the mobile computing device's processing system 2. See, for example,the commercially available Ipod Nano with a built in pedometer. In otherimplementations, a pedometer 13A wirelessly transmits pedometer data tomobile computing device 1 that is received by a receiver in mobilecomputing device 1 in a manner understood by those skilled in the art.See, for example, the commercially available pedometer used with an Ipodor Iphone that receives pedometer transmissions from a shoe. Although inillustrative implementations, step-related data may be transmittedwirelessly to mobile computing device 1 for use in exercise tracking inwalking or running activities, exercise-tracking during such activitiesmay be made based on GPS data analysis alone, as will be explainedfurther below.

Mobile computing device 1, as will be appreciated by those skilled inthe art, includes a processing system 2 that is operatively coupled toreceive speech input from microphone 9, GPS data from GPS receiver 5,and image data from camera 10. Processing system 2, inter alia, executesthe unique weight, diet, food/nutrition, exercise/activity, behavior,health-related tracking, analysis, and user feedback applicationsoftware 6 stored in the mobile computing device's memory subsystem 15.Memory 15 may, for example, be implemented by a 64 GB memory, such asthat associated with the iPhone 4S or iPhone 5. Although not shown inFIG. 1, it is contemplated that, if desired, the user's mobile computingdevice may be coupled to a user's desk top computer to store and furtheranalyze any and/or all the information identified herein.

The computing device 1 also includes one or more cameras 10 that, aswill be explained further below, may be advantageously utilized as afood consumption and, if desired in certain instances, anexercise-related input device. The illustrative digital camera 10 thatmay, for example, be the digital camera in a conventional iPhone 4S oriPhone 5, incorporates a conventional optical system including animaging device having a CCD/CMOS image sensor. For example, the CCDimage sensor captures an optical image of a target and the imagingdevice outputs a converted image signal. As will be understood by thoseskilled in the art, image processing circuitry including an analog todigital converting circuit converts processed image data into a digitalimage signal. Such a digital image signal is transferred to processingsystem 2.

Memory 15, in an illustrative implementation, stores a wide range ofuser-related data 21 including a User Profile, and various userdatabases including for example, a food database, a nutrient database,an exercise database, and an activity database, each of which isdescribed in detail herein. As described below, an illustrative userprofile record format is shown in FIG. 8A. An illustrative user profile,includes the user's ID, sex, age, height, weight, wrist size, waistsize, a set of goals, potential reward information, etc.. Additionally,an illustrative user profile includes a range of health data includinginformation regarding handicaps, ailments, injuries, smoking,addictions, allergies, and food and exercise restrictions. FIGS. 8B and8C described below illustrate a user's food record format and exerciserecord format that also may be part of the user's profile or,alternatively, may be stored locally as databases on the user's mobilecomputing device, e.g., an Iphone, as indicated in FIG. 1.

The mobile computing device 1, in an illustrative implementation, alsoincludes associated speech recognition, analysis, and synthesis software8 stored in memory 15 that is utilized as is described below to providedata entry for food consumption, and certain exercise and behavior. Aperson skilled in the art will recognize that commercial speechrecognition, analysis and synthesis software systems are well known andare commercially available, such as Dragon Naturally Speaking offered byScanSoft and Via Voice marketed by IBM. Further, the speech recognition,analysis and synthesis software (hereinafter referred to as speechrecognition) 8 may be implemented by a system corresponding to Apple'sSiri intelligent personal assistant and navigator system utilized in theiPhone 4S or iPhone 5 augmented to incorporate the speech recognition,voice synthesis/communication and control features described herein. Thespeech recognition software 8 is executed by processing system 2. Thespeech recognition software includes a voice recognition module that isresponsible for parsing input speech as digitized by an audio codec andanalog to digital converter operatively coupled to processing system 2.Well known speech recognition algorithms are well understood to thoseskilled in the art and are available for inclusion included in suchspeech recognition software 8, such as, for example, the voicerecognition methodology described in U.S. Pat. No. 7,809,565, which isincorporated herein by reference. In an illustrative implementation, aswill be explained further below, speech recognition operations aresimplified due to user prompts that condition the system to expectreceipt of a certain type of information from the user to trigger thestorage of, for example, food consumption-related data.

Mobile computing device 1 includes a GPS receiver 5 that is capable ofdetermining the geographic location of computing device 1 via receivedsatellite signals from antenna 7 in a manner well understood by thoseskilled in the art. The GPS receiver 5 in an illustrative implementationis operable to output to processing system 2 the geographicalcoordinates of mobile computing device 1 to define its current locationin real time. The geographical coordinate location data may be stored inconjunction with time-related data under the control of processingsystem 2 for use in calories burned-related calculations. As notedabove, in illustrative implementations, in addition to wirelesslyreceiving GPS data, mobile computing device 1 may wirelessly receivestep-related data from a pedometer-based device 13A including atransmitter that transmits step-related data that is received via, forexample, the mobile computing devices' antenna 7 and processed asdescribed herein in a manner appreciated by those skilled in the art.

It should be recognized that in yet other illustrative implementations,a vast number of additional mobile computing devices 1A-N (where A toN—used herein as any desired integer—may range from 1 to any desirednumber of devices N) may also be utilizing servers 14, 16, 17 and 20 forthe same weight, diet, and nutrition tracking and analysis as describedin detail herein. In illustrative implementations, weight losscompetition between users may occur. Moreover, teams of users may beformed to compete against each other based on a variety of criteria suchas total weight loss by team members, successful weight loss by highestpercentage of team members, total calories burned during exercise byteam members, etc.. In such an implementation, server 14 is programmedto compile the results for each team, assess such results, and declare avictor in the competition. Team members are rewarded in a mannercorresponding to the description below of the reward generation processwhen an individual user meets individual goals.

In an illustrative embodiment, the mobile computing device 1communicates via the Internet 11 with one or more physicians and/ornutritionists and/or personal trainers located at one or more remotelylocated data processing stations 20 exemplified in FIG. 1 as aphysician/nutritionist/personal trainer server 20. In illustrativeimplementations, goals to be attained by users are set based upon agenerated user profile using health and exercise information obtainedfrom the user and/or using physician, nutritionist, personaltrainer-generated thresholds for the user including average calorieintake per day, grams of sugar intake per day, amount of exercise perday, etc. In one illustrative implementation, it is contemplated thatthe user input all requested health and exercise information into thesystem without assistance from a physician, nutritionist, trainer orother source. In such an implementation, a user, for example, maydetermine requested variables by his/her own research by communicatingwith a doctor, healthcare professional and others, and then enter suchinformation. In this implementation, the user need not rely on any othersource for inputting information.

In certain illustrative embodiments, server 20 may be distributed andimplemented by, for example, individual physicians who already have adoctor-patient relationship with the user of mobile device 1. Suchphysicians commonly have an extensive medical history stored forpatients. Various implementations, particularly those that involve largenumbers of users may employ artificial intelligence-based software thatautomatically responds to medical queries and sends warning messages ifmaximum or minimum thresholds are exceeded or are not met triggered by,for example, a user consuming too much sugar, too many calories, notcompleting enough exercise, etc. As will be appreciated by those skilledin the art, the number of servers 20 employed will need to be tailoredto the volume of inquiries. In other implementations, particularly thosehaving a modest volume of queries, it is contemplated that a physician,nurse, physician's assistant, nutritionist, personal trainer, or otherprofessional individually responds to queries and personally manages theuser's food consumption and exercise programs.

FIG. 2A is a flowchart delineating the general sequence of operationsperformed by a mobile computing device 1 during execution of the weight,diet, food, nutrition, exercise, activity, behavior, health-relatedtracking, analysis, and user feedback application software 6 identifiedabove in conjunction with FIG. 1. Upon a user selecting application 6for execution (30), initialization operations are performed (31). In anillustrative implementation, when the weight tracking and nutritionanalysis application initially begins executing, a display is generatedidentifying feature highlights of the weight tracking, exercisetracking, nutrition analysis and the reward/motivational aspects of thesystem and methodology described herein that promote, for example,weight control, better nutrition and a healthier lifestyle. In anillustrative embodiment, a user is prompted to indicate the user'sagreement to initiating weight, medical and exercise trackingoperations. In an illustrative implementation, a user may be required toacknowledge and accept certain responsibilities in using this devicerelating to, for example, diet regimens and exercise routinesrecommended by the system. In such an implementation, the user isrequested to read an associated disclaimer and then select anaffirmative response to acknowledge acceptance of responsibility by theuser for the device to begin operation. Initialization processing in anillustrative implementation involves user authentication and appropriateconfiguration of files to be used by application 6. Upon initial entryinto the application, the system resets registers storing, for example,variables to track to a zero state. A check may be made to ensure thatthe application has been appropriately downloaded. If, for example, theuser turned off a smart phone or other mobile computing device 1 topause during exercising, in initialization processing, the systemrestores the prior processing and file states to comport with the pointwhere the exercising (or other processing) paused.

After initialization operations, if not previously created, a userprofile is generated during create user profile processing(32) as isdescribed in detail herein in conjunction with the description of FIGS.3A-3F. In an illustrative implementation, user prompts are generated torequest desired data including user height, weight, medical conditions,including, but not limited to diabetes, heart disease, handicaps,allergies, etc. In illustrative implementations, during this process,smokers and users who are attempting to quit smoking are alsoidentified. In an illustrative implementation, data is supplied by usersvia speech input and/or by a graphics display/touch screen that may beprovided in parallel with speech inputs to aid in the recognitionprocess. Such user data is supplemented, if authorized by the user, withdetailed relevant blood work and goal-related information transmittedvia the Internet 11 from a physician/nutritionist/personal trainer'sdata processing center 20. The user profile in an illustrativeembodiment stores goals including weight loss, exercise, smokingcessation, and other goals. In illustrative implementations, goals aredynamically changed over time. For example, smoking cessation goals maybegin at not smoking for one day and be modified to more long term goalsas smoking cessation goals are continuously met. As will be explained indetail herein, during subsequent processing, after a user profile hasbeen created, the system modifies the user profile in real time based oncurrent information stored locally and/or in the database associatedwith server 14 during mode processing. After the user profile has beencreated, it is accessed from server 14, if it is not already storedlocally within the mobile computing device 1.

After a user profile data entry operation has been completed (32), acheck is made to determine whether the user profile is complete (33). Ifnot, the user is prompted to “please complete profile” (23) by enteringfurther data in the user profile as indicated at block 32. The user'scontinued efforts in completing the profile provide an opportunity forthe user to correct any data entry errors by modifying any previouslyentered data. In an illustrative implementation, the user is given alimited number of attempts to complete the user profile to provide somepredetermined minimum level of completion. Once this limited number ofattempts has been reached, if no data is entered by the user, the weighttracking and nutrition analysis routine is exited. While it is desiredto limit the number of user data entries to the bare minimum, inillustrative implementations, it is likewise desirable to require asufficient amount of information about the user to assist the user ingaining life changing, long-term health benefits from the systemdescribed herein.

If the check at block 33 indicates that the user profile is complete,then the user profile is stored locally in the user phone DB (storage15) and also uploaded to remote server 14 (25).

Thereafter, mobile computing device 1 generates a “select mode” display(35) as illustrated in FIG. 2B to display various operational modes thata user may initiate as will be explained in detail below.

A check is then made to determine the mode of operation to enter basedon a user's selection of the modes displayed on the display of theuser's mobile computing device 1 (36) , as explained in further detailin conjunction with FIG. 2B. A check is then made at block 27 todetermine whether the select mode display has been exited (27). If so,the select mode screen is closed.

If the user has not selected the exit icon in FIG. 2B, then based on theuser's selection of one of the operational modes, the system enters theselected mode (38). In an illustrative implementation, the systemsequences through checks for each of the displayed modes to determine ifthe user has selected a mode. If no mode is selected, the routinecontinuously cycles back to check the various modes being displayeduntil the user finally selects a mode.

If, for example, the food mode has been selected, the system acquiresthe user's desired food consumption data (39), as will be explainedfurther below. A check is then made at block 40 to determine whetherdata is available. If data is not available, the routine continues tocheck for data. Such data checking continues until a predetermined timeperiod passes (e.g., a number of minutes of no data entry), at whichpoint the routine branches back to display mode block 35. If data isavailable, the system acquires the appropriate data for the mode beingprocessed, and the detailed processing associated with the selected modeis performed (42) as shown in the continuation of FIG. 2A.

After a mode processing operation (42) has been completed, a check ismade at block 43 to determine whether the mode of operation in processhas ended. If the mode being processed is not yet finished, the routinebranches back to block 42 to complete mode processing. If the mode hasfinished, then a check is made at block 44 to determine whether the userhas decided to cancel the current mode being processed or to change to adifferent mode (44). If the user has decided to cancel or change themode, the routine branches back to display mode block 35.

If the user has not canceled or changed the mode as indicated by thecheck at block 44, the databases associated with the user are updated(46) to reflect in real time the current status of, for example, theuser's food consumed or exercise performed.

A check is then made as indicated at block 47 to determine whether areward has been earned based on, for example, the updated data generatedduring mode processing that was stored at block 46. If no reward hasbeen earned, the routine branches back to display modes block 35.

If the check at block 47 indicates that a reward has been earned, thesystem performs reward processing operations to determine if goals havebeen met and, if so, provides, as desired, a reward to the user formeeting daily, weekly, or monthly goals (48). By way of example, basedupon a user's indicated preference for a music-based reward, the rewardprocessing system (44) may utilize Apple's iTunes application. TheiTunes' app automatically selects music to download to the user basedupon: [1] the contents of the user's iTunes' playlist; [2] the musiclistened to by the user during exercise; or [3] a stored playlistcreated by the mobile computing system 1 over time. Thereafter, theroutine branches back to display modes block 35.

As shown in FIG. 2B1, in one illustrative implementation of the mobiletracking system and methodology described herein, a “Select mode”display is generated in which an array of select mode icons aredisplayed. The user may enter any mode he or she chooses, starting withthe User Profile mode 50 where, upon system startup, the user canextensively personalize the system by declaring his/her favorite foodsand exercises (explained in detail with FIGS. 3A-F). The dotted linesbetween displayed icons indicate that additional other mode initiatingicons (such as Diet/Exercise Issues mode 54) may be added to the iconsshown in FIG. 2B1 to provide ease of user entry into additionaloperations disclosed or suggested herein or contemplated in otherimplementations. In the example shown in FIG. 2B1, an illustrative “Nth”mode (where N is any desired integer N representing the last desiredmode in a particular implementation) is exemplified as a Vitamins mode60 to provide ease of user entry of the user's preferred/favoritevitamins and food supplements (e.g., ginkgo biloba).

As also shown in FIG. 2B1, in an illustrative implementation, the iconsare conveniently arranged in a layout corresponding to the user'sexpected most frequent accesses to the system. For example, in thisillustrative implementation, the top level is reserved for the mostoften accessed icons: displaying/modifying the User Profile 50 (FIGS.3A-3F), entering food eaten throughout the day via Food mode 56 (FIG.4A), and entering exercise performed throughout the week via Exercisemode 62 (FIG. 5A). The middle level is reserved for functions accessedby the user on an as-needed basis: a Diet Selection mode 52 (FIG. 2B2),any Food Purchases 58 (FIG. 6A), and any GPS-based Exercise 64 (FIG.5A). The bottom level includes a Diet/Exercise Issues mode 52 (FIG. 6B)for obtaining personalized tips for addressing a user's diet/exercisepersonal behavioral issues, and a Vitamins mode 60 (as an example of theNth mode) for user entry of vitamins/minerals taken and personalizedinformation/recommendations regarding vitamin supplements. At any time,the user may choose to exit the mobile system via Exit icon 66.

As shown in FIG. 2B1 and as explained in detail in conjunction withFIGS. 3A-F, the User Profile mode 50 may be entered at any time topermit a user to create, modify, or display his/her User Profile. Entryinto such a mode may, for example, enable the user to immediately accesshis/her current weight loss, calories consumed, calories burned, andother exercise, nutrition, or health-related data to get real-timefeedback on his/her progress to date.

Detailed Discussion of Diet Selection Mode 52 (FIG. 2B2)

In an illustrative implementation, a Diet Selection mode 52 permits auser to select a diet to be associated with the user's profile that may,for example, be used to target one or more medical conditions of theuser. As used herein, the term “diet” is used broadly to refer to anorganized plan for specifying or limiting what one eats and drinks. Theplan does not necessarily have to have weight loss as its goal.

In an exemplary implementation, upon the selection of the “dietselection” mode, an array of icons are displayed identifying variousdiet regimens, at least some of which are targeted to address one ormore serious medical concerns or specialized needs. For example, one ormore icons zone in on a diet tailored to addressing the needs ofdiabetics, cancer patients, individuals who are attempting to quitsmoking, gluten intolerant individuals, and users having high bloodpressure, other major medical conditions or specialized needs such asthose of athletes. Upon the selection of such a diet, the applicationgenerates and/or accesses pre-formulated breakfasts, lunches and dinnersthat are targeted to comport, where possible, with a user's indicatedfavorites, and with the selected diet and associates such meals with theuser's profile.

In an illustrative implementation, one of such icons available in thediet selection mode would, for example, enable selection of the“GOMBS”-related diet promoted on various mass media by Dr. Joel Fuhrman.In such an implementation, variations of meals following the spirit ofthe GOMBS-related diet as identified in Dr. Fuhrman's book “Secrets toHealthy Cooking” are stored in a database used in the illustrativeimplementation.

GOMBS is an acronym for Greens, Onions, Mushrooms, Beans and berries,and Seeds and nuts. Such foods have reportedly been associated withhealthier blood vessels/blood flow, reduction in the likelihood ofsuffering from certain cancers, enhanced weight loss, anti-diabetic andother beneficial properties. It has been reported that green leafyvegetables have many diverse nutrients and properties that help the bodyto allow blood vessels to function better. Onion consumption has beenassociated with reduction in certain cancers in at least one Europeanstudy. Mushroom consumption has been associated with a decreasedlikelihood to develop breast cancer in certain studies. Beans andberries have been reported to have high cancer preventive antioxidantslevels while promoting healthy brain function. Beans and legumes havebeen reported as containing soluble fiber and as having anti-diabeticand weight-loss properties. Blueberries, strawberries and blackberriesare low in sugar and very high in nutrients. The antioxidants in berrieshave been reported as providing both heart-protective and anti-cancereffects. Raw seeds and nuts have been reported as helping to reduce thebody's inflammation and to reduce cholesterol.

In accordance with an illustrative implementation, if the user selectsthe GOMBS diet (on his or her own or after being prompted to considerthis diet due to a user's profile indicated health condition), theapplication generates and/or accesses pre-formulated breakfasts, lunchesand dinners that feature these health benefitting ingredients and thatcomport, where possible with the user's favorite foods and with theGOMBS-related diet and associates such meals with the user's profileusing a variation of the format shown in FIG. 8B.

Turning to an illustrative example of the diet selection mode, theuser's selection of diet selection mode icon 52 shown in FIG. 2B1triggers the generation of a display of an array of diet-related icons,such as is shown in FIG. 2B2. In an illustrative implementation, it iscontemplated that the user will have the opportunity to select a totallycustomized diet plan or any one of a variety of popular diet plans suchas, by way of example only, the Atkins diet (100) and the South Beachdiet (101). The selection of icon 100 or 101 will respectively result inthe generation of a presentation of the details of the Atkins and SouthBeach diet plans including a list of foods that comport with each plan.

In addition, in an illustrative implementation, an array of icons aregenerated that have been recognized as being helpful in addressingvarious medical conditions including those identified by users in theiruser profiles. The use of specific dietary regimens to enhance thetreatment and control of medical conditions is often an importantcomponent of an overall treatment plan for the specific condition. Assuch, specialized dietary regimens can be utilized as part of theoverall treatment of that medical condition in an individual whose goalis to keep their weight stable. Additionally, these specialized dietaryregimens can be used as part of a weight loss intervention for anindividual suffering from certain medical conditions. In this setting, acalorically restricted regimen having specific beneficial componentsrelative to the medical condition would be utilized.

In an individual suffering from more than one medical condition, acustomized dietary regimen utilizing and incorporating specificbeneficial components of a number of specialized regimens would beutilized addressing special dietary needs in a way that enhances thetreatment of all of the medical conditions. An example might be use of aspecialized dietary regimen having beneficial components to improvediabetes and hypertension concurrently.

Another situation to consider is the individual suffering from a medicalcondition such as cancer or gastrointestinal absorption problemsresulting in excessive weight loss and difficulty maintaining weight.There are specialized dietary regimens that can be utilized to improvethis situation. In an illustrative implementation, one or more of suchregimens would be identified and highlighted to such an individual andwould be included in the array of icons dedicated to therapeutic dietplans (98).

There are also other circumstances in which individuals may benefit fromspecific dietary regimens not related to weight loss and not related toa medical condition. Examples include athletes in a specific trainingregimen such as endurance running or weight training. In an illustrativeimplementation, one or more of such regimens would be identified andhighlighted to such an individual and would be included in the array oficons shown in FIG. 2B2.

It is possible to contemplate even more permutations of special dietaryneeds in individuals that may have certain medical conditions, arestable and otherwise healthy and are pursuing various athleticendeavors. An example might be a young type I diabetic who is a longdistance runner. This individual would benefit from some aspects of adiabetic diet but would have vastly different nutritional needs comparedto a sedentary type I diabetic. In an illustrative implementation, anacceptable regimen would be identified and highlighted to such anindividual and would be included in the array of icons dedicated totherapeutic diet plans (98).

In an illustrative implementation, when the diet selection mode icon 52is selected, a display is generated identifying an array of icons eachdefining a diet regimen that may be selected by a user. For example, asshown in FIG. 2B2 when the diet selection mode icon 52 is selected adiet selection screen is generated. As indicated above, the dietselection screen includes an array of possible diets that may beselected by user to review foods that may be eaten in conformance with adiet.

As shown in FIG. 2B2, in this example, with respect to medicalcondition-related diets, a user will be enabled to select a diabeticdiet 91, a hypertension diet 92, a renal diet 93, the GOMBS diet (102)described above, a cardiac diet 94, a gluten-free diet 95, a foodallergy diet(s) 96, athletic/muscle building diets 97, and any of anarray of other therapeutic diets 98, at any time the user may exit fromthe diet selection screen by touching the exit icon 99.

In illustrative implementation, when a user identifies in his or heruser profile a health condition which implicates one or more of theidentified diets, upon selecting the diet selection screen one or moreof the diets shown in FIG. 2B2 is highlighted for the user. For example,for a user who indicates in his or her user profile, a diabetic or bloodsugar-related problem, diabetic diet 91 will be highlighted for the userto peruse.

In such an implementation, each of the medical condition/healthcondition-related diets is indexed in the system in a memory table usedto access one or more diet plans. The memory table is structured toassociate a set of medical or health conditions with one or more dietplans. For example, key terms such as “diabetes,” “blood sugar,”“diabetic,” etc., are linked in the memory table used to access one ormore diet plans to a diabetic diet. Similarly, key terms such as“hypertension,” “high blood pressure,” etc., are linked in such a tableto a hypertension diet. Key terms such as “cardiac,” “heart,” etc. arelinked in this table to a cardiac diet plan. Likewise, terms such as“gluten,” or “allergy” are respectively linked in the table to agluten-free diet or a food allergy diet. Further, in an illustrativeimplementation, the user is prompted to review the diet highlighted onthe diet selection screen or otherwise notified of appropriate diets, ifthe user has identified (e.g., during the creation of his or her user'sprofile) a condition suggesting the efficacy of such a diet inaddressing the symptoms or causes of the user's condition.

The following are some examples of special dietary regimens includingthose identified above that would be beneficial in the treatment andcontext of certain medical conditions and certain athletic situationsand that would be selected by the system for consideration by the userbased upon the user's profile implicating one or more of the followingdiets:

-   -   1) Diabetic diet—goal is to alter diet in a mariner that        improves control of serum glucose. This regimen typically        decreases sugary carbohydrates and saturated fats while        increasing fiber and protein. Also, timing of food intake is        important in a diabetic dietary regimen. A calorie restricted        version of this diet would be utilized in diabetic individuals        needing to lose weight.    -   2) Hypertension diet—goal is to alter diet in a manner shown to        improve blood pressure control. The DASH diet (Dietary Approach        to Stop Hypertension) is an accepted example of such a regimen.        This regimen typically promotes use of more fruits, vegetables,        low fat dairy, grains, fish and poultry and foods rich in        magnesium, potassium and calcium while discouraging saturated        fats, red meat, sugary carbohydrates and salt. A calorie        restricted version of this diet would be utilized in        hypertensive individuals needing to lose weight    -   3) Renal diet—goal is to alter diet in a manner shown to        minimize complications associated with existing or developing        renal dysfunction. Those individuals having compromised renal        function and those to the point requiring dialysis must limit        intake of sodium, potassium and phosphorous while delicately        balancing fluid intake and output and maintaining appropriate        levels of electrolytes while also taking in an appropriate        amount of protein to maintain lean body mass but not negatively        impact remaining renal function. A calorie restricted version of        this diet would be utilized in individuals having renal function        impairment needing to lose weight    -   4) Cardiac diet—goal is to alter diet in a manner to minimize        risk of cardiac illness and promote cardiac function in the        context of existing cardiac disease. This regimen discourages        foods with high amounts of cholesterol and saturated fats while        promoting low fat protein, vegetables, fruits and unsaturated        fats. A calorie restricted version of this diet would be        utilized in individuals having cardiac disease needing to lose        weight    -   5) Gluten free diet—goal is to eliminate or minimize foods        containing gluten. Individuals suffering from celiac disease        cannot process gluten containing foods. These foods, including        most cereals, breads and pastas must be eliminated and replaced        with fruits, vegetables, unprocessed meats, dairy and non gluten        containing grains such as rice. A calorie restricted version of        this diet would be utilized in individuals with celiac disease        needing to lose weight    -   6) Therapeutic diets—there are numerous additional conditions        that would benefit from customized, specialty dietary regimens        that would help diminish the negative affects of the condition.        An example here would be food allergies. Some individuals suffer        from allergies to certain foods which can vary in number from        few to many. Specialized dietary regimens are often required to        help minimize the food allergy symptoms. A calorie restricted        version of this diet would be utilized in individuals requiring        the use of therapeutic diets needing to lose weight    -   7) Athletic diets—nutritional requirements of athletic vary        significantly based on the type, duration and goal of the        athletic activity. For example, individuals in weight training        building large amounts of muscle need greatly increased amounts        of protein daily while the dietary regimen of endurance runners        would need to include more carbohydrates and some fats.

Detailed Discussion of Remaining Select Modes in FIG. 2B1

Entry into the Food mode 56 permits the user to enter into the systemfood that is consumed in a manner that is as user-friendly as possible.Over a period of time, users tend to eat one or more of the samefavorite meals for breakfast, lunch, or dinner on a consistent basis.Taking advantage of this habituated tendency, the system can learn agreat deal about the user's present nutrition profile by initiallyasking him/her to declare his/her Top 5 favorite meals. In anillustrative implementation, a user working, for example, with aphysician, nutritionist, or other consultant selects various breakfast,lunch, and dinner combinations where the food is nutritional (e.g., lowin calories, sugars, saturated fats, sodium, etc.) that will be storedeither directly in or linked to the User Profile. Such preselected mealsmay be stored in the User Profile as schematically represented in FIG.8B. For example, a user who has chosen to eat a daily breakfast ofCheerios, with raspberries, blueberries, and skim milk may, in anillustrative implementation have stored in his user profile, acorresponding breakfast identified as “breakfast number 1” together witha wide array of nutritional information for such a breakfast including,for example, calories and sugar content. A wide array of similar userprofile meal entries may be made for lunch and dinner. In anillustrative implementation, the food mode incorporates extensive use ofcolor codes to inform the user as to a wide range of health andnutritional information about the food being consumed and alternativechoice options.

Using speech recognition software 8 shown in FIG. 1, the systemrecognizes, for example, the user stating “breakfast number 1” inresponse to a verbal and/or displayed prompt to describe breakfastinformation. The speech decoding process is simplified by using suchuser prompts since the system may expect to receive a verbal indicationof, for example, a known category of foods, e.g., breakfast foods or aprestored breakfast combination (e.g., “breakfast number 1”). This sameuser/system interactive process is likewise used for the user to storeand later specify other favorite meals such as “Lunch number 3”, “Dinnernumber 5”, etc. Alternatively, where no prestored meals have beenselected, in an illustrative implementation, the system prompts users tostate, for example, the breakfast food consumed and the food amount. Thesystem then determines the caloric, nutritional, and otherhealth-related characteristics of the food consumed which will be storedand analyzed by the system and displays relevant color codes to theuser.

In an illustrative implementation, in conjunction with creating a userprofile, if a user indicates a particular favorite food such as a snack,e.g., chocolate ice cream, the system will display its associated colorcode, e.g., Orange or Red, indicating a poor choice by the user. Thesystem will thereafter display alternative snack choices have bettercolor code ratings—e.g., yogurt (color Green), an apple (color Lime) oralmonds, walnuts and flax seeds (color Green)—all in an attempt toprompt the user to select a healthier favorite.

In an illustrative implementation, the system accesses a wide range ofaccessible nutritional information from existing sources throughInternet resources. For example, food/nutrition lists having informationregarding calories, fats, carbs, etc. are available though such sourcesas CDC or NIH (e.g., see FIGS. 4B1-4B2) or weight watchers or similarorganizations (with permission to obtain such lists). With suchavailable nutritional information accessed through its databases, thesystem can calculate the wide range of calorie and nutrition valuesreferenced herein. Similarly, various exercise lists with associatedcalories burned information have also been developed/refined across manyyears of research, and are readily accessible (see FIGS. 5B1, 5B2).There are also preexisting classifications of food and drinks thatassign a value as to how satisfying a particular food might be (e.g., asatiety index) that may be used in the illustrative implementations.

Additionally, as explained further below, in illustrativeimplementations image processing technology may be utilized to identifythe food consumed to aid in the identification of caloric and othernutritional/health-related characteristics of the food.

In an illustrative embodiment, an Exercise mode 62 may be entered inwhich, for example, speech analysis software 8 is utilized to enable theuser to input a wide variety of exercise data, as is explained in detailbelow in conjunction with FIG. 5A. For example, the generated output ofvarious conventional health club and home exercise machines, such aselliptical machines, stationary bicycle machines, stepper machines,etc., that generate, for example, the number of calories burned duringan exercise session may be input by a user. In a further implementation,a user lacking the time or desire to enter such data via speech inputmay choose to input such data by using the mobile computing device'scamera to capture the data via a digital photo of the output display ofthe exercise equipment being used. The system analyzes the image toextract such data as calories burned. It is further contemplated that,in certain implementations, the system may use exercise equipmentmodified to communicate a user's exercise session data to the mobilecomputing device 1 via a wired or wireless communication link.

Upon detection of the user entering a GPS-based exercise mode via theGPS exercise icon 64, the system automatically acquires user coordinateposition data and monitors the time over which running, walking, orbicycling activities have occurred (e.g., via “Start” and “Stop” screenicons). After user entry of the type of exercise undertaken, the systemgenerates the number of calories burned based on the distance traveledwithin the time monitored.

Further, in an illustrative implementation, a Food Purchase mode may beentered via the Food Purchase icon 58 to guide the user during foodpurchasing (at a grocery store or at a restaurant) to determine whethera food product being purchased is consonant with the user's profile,selected diet, and associated goals and health issues. This mode allowsa user (in a grocery store shopping or in a restaurant dining) to accessa database that identifies alternative products of the same producttype. This enables a user, e.g., to select a similar alternative thatcuts down on the amount of sugar or calories consumed.

Various other modes (not shown) may be incorporated in the “Select Mode”display shown in FIG. 2B1.

In an illustrative implementation, for each food and exercise activitysupported by the system described herein, the system advantageouslyprovides color code feedback to the user with respect to any and all ofthe many nutritional parameters monitored by the system while takinginto consideration the specific health improvement the user is seeking.For example, in an overweight male user trying to lose weight, fruit iscolor coded “Green” to indicate a very positive choice by the user.However, when providing feedback to an overweight female diabetic userwho is trying to lose weight and improve her diabetes control, fruit iscolor coded either “Orange” or, after surpassing a certain amount offruit in one day, it turns “Red” due to the sugars in fruit that make ita liability for diabetics.

Similarly, with respect to exercise, for a user with significantarthritis in the knees and hips who is trying to lose weight , treadmillwalking is coded red but elliptical machine is coded orange and walkingor swimming in a pool is coded green. In an illustrative implementation,exercise duration times are also taken into account by color coding theactivity based on the activity itself and the time performing theactivity—with too little (or too much) exercise time generating the lessdesirable color code, all taking into consideration the user's healthparameters (heart disease, arthritis, asthma, etc) and the user's goal(to lose or gain weight, improve strength, increase endurance, quitsmoking, etc).

FIG. 2C shows an illustrative implementation of a Color-Code RatingScale Table for generating color-coded ratings using stored thresholdswith respect to (WRT) each Food and Exercise item being tracked by thesystem to provide immediate feedback, guidance, and motivation enablingusers to make healthier decisions. The color codes are generated foreach food and exercise being tracked and are adjusted for user weight,height, sex, age, health, goals, progress, etc. As the user enters anygiven food or exercise that he/she is about to consume or undertake, thesystem rates the relative value of that item WRT the user on a simplescale ranging from 1 to 5 (“Worst” ==>“Best”). As depicted for displayto the user in the top block 280 of FIG. 2C, the system attaches asymbolic color to each of the 5 rating levels (RED 281/ORANGE 282/YELLOW283/LIME 284/GREEN 285), which corresponds to a gradually improvingrelative value (at 290): WORST (starting at the bottom at 0%)==>up toBAD==>up to AVERAGE (passing through 50%)==>up to GOOD==>up to BEST(reaching the top at 100%).

In the illustrative implementation, these 5 colors are an expansion ofthe ubiquitous Stoplight Colors for traffic control (RED/YELLOW/GREEN)that have become “Stop-and-Go” conventions for traffic worldwide. Assuch here, they are designed to trigger compulsive, lifelong-conditionedresponses in users to “Stop” on RED cues and “Go” on GREEN. The systemuses these strong internalized negative/positive stimulants to guide theuser to his/her desired goal (lose weight, get stronger, get healthier,etc.): e.g., by hopefully shifting the user over time from his/her worstfood items (color RED) to nature's best choices (color GREEN) . . . orby elevating an average exercise such as casual “walking” (color YELLOW)to a better exercise like timed “jogging” (color LIME) . . . andultimately to a best exercise like “running” (color GREEN).

Moreover, in an illustrative implementation, beyond the “best” GREENlevel 285 lies a “Superior” BLUE level 286, which represents anexceptional Food or Exercise value that goes beyond 100% on any scale(e.g., exceeding the user's goal). Any such top value is awarded a BLUERIBBON by the system for superior performance—which is also a recognizedcolor convention. Finally, as also depicted in top block 280, upon eachuser Food or Exercise input, the system immediately displays its ratingas a RED==>BLUE “button” attached to the item.

The center block 290 of FIG. 2C next provides two pairs of parallelRating Examples that illustrate how the visually stimulating Color-CodeRating Scale has been applied to every level of the system,top-to-bottom:

-   -   Bottom Level: starting at the bottom level, the first pair of        examples 291/292 is actually a continuum of parallel ratings        that run the gamut for what nature has to offer as a “nutrient”        WRT its bad-to-good effect on the human body:

-   Unhealthy Nutrient 292 runs the gamut from “Worst” −100%==>0% “Best”    . . .

-   Healthy Nutrient 291 continues the run from “Worst” 0%==>+100%    “Best” . . . so that taken together, the pair runs continuously from    −100%==>0%==>+100%    -   Range Limits: each rating example is expressed as a series of 5        range limits that are calculated WRT a baseline of        extremes—i.e., each baseline for a given nutrient is established        WRT its most accessible, widely-available Top 5 items (e.g.,        oranges available from any food store as opposed to Borneo        jungle fruit):

-   Healthy Nutrient 100% baseline 291 is based on its highest-rated Top    5 sources (see FIG. 2E for an example of how a +100% baseline is    derived for Vitamin C)

-   Unhealthy Nutrient −100% baseline 292 is based on lowest-rated Worst    5 sources, so the user can be guided from his worst RED snack to    Nature's best GREEN food    -   Middle Level: at the system mid-level displays are Straight-Line        Curves 293 for linear functions, such as milligrams (MGs) for a        given Vitamin or Mineral from all food sources. Such a curve is        a linear plot of MGs—fewest (RED) to most (GREEN)—where all        increments are the same size from 0%==>100% (see FIG. 2E for an        example of how Vitamin C would plot as a straight line, where        each 20% increment of 15 MGs corresponds to 11 unique food        items)    -   Top Level: at the top level of system displays are Changing-Rate        Curves 294 for non-linear functions such as Weight Loss, which        typically starts with a few large increments (40%==>30%) that        quickly taper off to smaller increments (20%==>10%) over time.        This allows user progress to be displayed as a non-linear        RED==>GREEN curve vs. his/her goal curve over a week/month/year        (see FIG. 7A4 for an example of how healthy==>to ideal weight        tapers off, where each 20% delta of 3 weeks tapers off from        4==>3==>2==>to 1 pound which shows, for example, as often        experienced by professional boxers, how difficult it is to burn        off the last few pounds).

FIGS. 2D1 and 2D2, which is largely self-explanatory, illustrates adatabase that delineates, in light of the current state of the art,essential nutrients that the human body needs to function properly,together with color codes for each nutrient. Macronutrients (FIG. 2D1)are nutrients the body needs in larger amounts (e.g., >10 grams), andmicronutrients (FIG. 2D2) are nutrients the body needs in smalleramounts (e.g., mostly <1 gram) so that it can perform all of itsfunctions properly. Although micronutrients are only needed in minuteamounts, their deficiency can ultimately lead to critical healthproblems.

The database illustrated in FIG. 2D1 shows various categories of macronutrients, together with their Daily Value (DV) in MGs at 2000 cal perday. The macronutrient categories of essential nutrients for the humanbody include carbohydrates, sugars, dietary fiber, cholesterol, dietaryfat, and proteins. As shown in the left-most column of FIG. 2D1, eachmacronutrient is further associated with a color code that identifieswhether it is good, bad, or somewhere in between. For example, saturatedfats (DV=20 g) are associated with a color code of Red that indicatesthe worst level of health, because Americans typically get far more than20 g per day—particularly from hamburgers and french fries (e.g., seeFIG. 4C for McDonald's Big Mac and TGIF's seasoned fries). In contrast,polyunsaturated fats such as Omega-3 fatty acids rate a Blue Ribbon,color because they promote an extremely level of health—yet manyAmericans seldom eat these foods (e.g., see FIG. 4C for a side-by-sidecomparison of Salmon and Turkey with the items above, all at 220 gserving size). Although Omega-6 fats are essential macronutrients, theyappear in such large quantities in the typical American diet, theybecome harmful since the huge excess starts quickly shifting intosignificant weight gain—hence, for Americans, in this example, they ratethe color Orange. Cholesterol provides another prime example as to howthe color codes described herein can serve to help the user. Since ithas been reported that the body can only generate approximately 70% ofthe cholesterol it needs, it still needs an additional 30% from dailyfood sources (hence, DV=300 mg). However, to avoid making matters worse,the user should find foods that provide more of the good “Green” HDLthan the bad “Red” LDL. FIG. 2D1 shows how the system assigns the 5color codes RED==>GREEN to the 5 rungs of the Cholesterol Ladder so asto maintain the equilibrium of the cholesterol equation:

Total Cholesterol (mg/dL)=HDL+LDL+Triglycerides/5 (mg/dL) which isunlikely to be calculated or tracked or tracked by most individuals

The 5 rungs of the Cholesterol Ladder are displayed as 5 correspondingcolors to the user for each food with meaningful levels of HDL/LDLcholesterol

FIG. 2D2, which is also largely self-explanatory, is an illustration ofessential nutrients-micronutrients database identifying color codinglevels for each nutrient that the body needs to function properly. Thedatabase illustrated in FIG. 2D2 is based upon nutrient and daily value(DV) data taken from a published USDA database (e.g., downloadabledirectly from USDA websites) and shows various categories ofmicronutrients together with their daily value (where a daily value hasbeen established) in micrograms at 2000 cal per day. With respect tofood and nutrition tracking, it is significant for users to be aware ofwhether the foods they are consuming provide the required amounts ofnutrients identified in the database of FIG. 2D2. As indicated in FIG.2D2, each of the associated categories of vitamins, carotenoids, macrominerals, micro minerals, and various trace minerals are color-coded toindicate their Green and Blue Ribbon ratings, indicating their extremelyhigh nutritional value (caveat: no DV can be established for traceminerals since their subtle functions are generally too difficult toisolate). The international-standard USDA Nutrient DB (delineated inFIGS. 4B1 and 4B2) contains all of the above essential nutrients(identified in FIG. 2D), except vitamin B7 (biotin), E (4 tocotrionols),zeaxanthin, iodine, and molybdenum.

FIG. 2E provides an illustrative example of how color code ratings fromRED==>to GREEN can be derived for any given nutrient, such as vitamin C,by using its Top 5 food sources to create a 100% baseline. FIG. 2Edepicts one way the system can assign 5 color codes RED 1==>5 GREEN tofive 20% increments that reach the 100% baseline as an upper limit (asillustrated in FIG. 2C).

With respect to the exemplary nutrient Vitamin C, FIG. 2E shows anexemplary subset of food sources for vitamin C (in 2 pairs of columns)that are both commonly known and widely available in food stores, whichhelps make the search for high-quality food more user-friendly. Thequalifying foods are shown in descending order of milligrams (mg) ofvitamin C per 100 g (3.53 oz) for each food item (extracted primarilyfrom the USDA Nutrient DB shown in FIGS. 4B1 and 4B2).

As illustrated in FIG. 2E, the exemplary 100% baseline for Top 5 sourcesof vitamin C is set as follows: There are relatively few extremely highsources of any given nutrient like vitamin C. For example, Acerola,Gooseberry, and Rose Hips are all very high sources of vitamin C—yet,they are not commonly known nor widely available at typical food stores,but rather, are primarily used to manufacture vitamin C tablets.Similarly, Jalapeno Peppers and red/green Chili Peppers are 3 more veryhigh sources of C, but they too must be dismissed as too “spicy hot” forthe general public. Hence, in this example, a Top 5 food for any givennutrient must meet 4 significant “user-friendly” qualifications:

-   commonly known to the vast majority of users-   widely available In food stores throughout the country-   palatable to the vast majority (eliminating “hot spicy” foods)-   consumable in portions >1 ounce (eliminating many garnishing spices

Thus, looking back at the top Vitamin C foods in FIG. 2E, the Top 5sources of vitamin C that meet these criteria would be #1 Red Pepper(190 mg), #2 Kale (120 mg), #3 Kiwifruit (93 mg), #4 Broccoli (89 mg),and #5 Brussels Sprouts (85 mg), where Cauliflower and Green/YellowPeppers are considered best peer alternates within the same food groupas #4 Broccoli and #1 Red Pepper.

100% Baseline and 5 Color Code increments: Once this process qualifiesthe Top 5 for Vitamin C, a 100% baseline can be drawn beneath the #5qualifier (Brussels Sprouts) at “greater than 80 mg” such that allfoods >80 mg of vitamin C are now considered @ Blue Ribbon level 6. Inthe example shown FIG. 2E, the 5 color code levels are sequentiallyassigned in 15 mg increments, e.g., Green @>59, Lime @>44, Yellow @>29,Orange @>14, and Red @ 0-14 mgs, such that there are about 11 food itemsper each 20% increment of 15 milligrams. Note that there are thousandsof foods not identified in FIG. 2E (too numerous to mention) that fallinto Red level 1 @ 0-14 mg, which merely indicates to the user that theyoffer the lowest amount of vitamin C. Moreover, from a potencystandpoint, FIG. 2E also reveals that most foods yield the highestlevels of Vitamin C in their raw form, and that boiling/freezing/canningthem invariably reduces their Vitamin C content—often significantly—andthat there are few animal sources since Vitamin C is water-soluble.

FIG. 2F is an illustration of a Top Foods database identifying variousnutritional characteristics of such foods and identifying related topfoods (best peers) in the same food family As indicated in FIG. 2F, thetop 14 foods are rated in terms of their content of macronutrients,vitamins, phytonutrients, minerals, and other nutrients. The databaseidentifies the macronutrients of protein, high fiber low calorie andomega-3 fatty acids and tracks the content of vitamin B1, B2, B3, B5,B6, B9, B12, C, and E. The database stores an indication for each of theidentified categories of macronutrients, vitamins, phytonutrients,minerals, and other nutrients whether the food provides a substantialamount of the given nutrient, indicating that it is a substantial sourceof the nutrient and whether this food is an abundant source of the givennutrient, indicating that the food has a much higher quantity of thenutrient than a substantial amount.

Each of the foods indicated in the illustrated column one of thedatabase is one of nature's finest sources for the identifiedmacronutrients, micronutrients, and minerals, especially where it servesas an abundant source. The database also includes a link to a list ofrelated foods, or best peers, to the identified top food. The databaseis utilized as a source for providing alternative recommendations offoods so that the system can encourage users, for example, to replace anunhealthy selection with a Top 14 healthy choice (or a best peer). In anillustrative embodiment, users may be encouraged to replace an unhealthyfood selection with a healthier selection on a step-wise basis usingbest peers selected from this database, then stepping up the food ladderto a Top 14 healthy choice. The database also provides a user who hasalready chosen one of the top-ranked healthy foods with an array ofalternate healthy foods to form a weekly food cycle.

FIG. 2G1 shows a database containing an illustrative array ofrecommended daily intake (RDI) values for various categories of users.This RDA database delineates the daily calories required to sustain menand women of varying age, weight, and level of physical activity. Forexample, as shown in FIG. 2G1, a man weighing 110 pounds is assigned anRDI of 2000 calories, whereas a woman of the same weight is assigned anRDI of 1500 calories. Similarly, a man weighing 176 pounds is assignedan RDI of 3500 calories, whereas a woman weighing 176 pounds is assignedan RDI of 3000 calories. This 500 calorie difference between men andwomen at the same weight can be attributed to men being typically moremuscular than women (i.e., muscles weigh more than normal body fat).Additionally, adjustments to RDI are made based upon whether the user'snominal physical activity is sedentary, moderate, or heavy. Note thatthese generic levels have been further discriminated into specific useractivities, with associated calories burned across 30 minutes, in FIGS.5B1 and 5B2. As further illustrated in FIG. 2G1, RDIs are differentiatedon the basis of age, i.e., linear calorie increments for 3-year agegroupings of children, boys, and girls, followed by single calorievalues for adult men, women, and pregnant women, followed by modulatedvalues for senior men, women, and lactating women. (all groups areassumed @ average healthy weight/height for their given age) Here arenutritional points revealed by this illustrative database:

-   RDI varies considerably with age, sex, body weight, and physical    activity\-   the singular DV of 2000 calories will only sustain a healthy woman @    132 lbs-   DV of 2000 applies to all women age 19-60, but only if they remain @    132 lbs-   the singular DV of 2000 cals only applies to a healthy 9-year old    boy @ 110 lbs-   DV of 2000 is not sufficient for any man >110 lbs or for any boy>age    9-   the singular DV of 2500 cals applies to all men age 19-60, but only    @ 132 lbs-   all DVs must be modulated UP for higher weight/heavier    activity/pregnancy/etc.

FIG. 2G2 shows that the RDI described in FIG. 2G1 can be flexiblymodulated up/down from the singular DV of 2000 calories. And, looking atthe expansion of RDI ranges for Protein/Carbs/Fat/Saturated Fat, FIG.2G2 further shows that such modulations to higher RDIs (e.g., forheavier healthy men) are strictly linear from 1800 cals/day==>DV @2000==>2500 cals/day. As explained below, the system described hereincalculates a Recommended Daily Intake (RDI) precisely tailored to eachuser per the Recommended Daily Intake (RDI) database in FIGS. 2G1-2G2.This RDI differs from USDA's ubiquitous “DV for a 2000 calorie diet”(that is strictly applicable to women @ 132 lbs or less). The system'sRDI can be fine-tuned to each user's age, sex, activity level, obesitylevel, current weight, ideal weight, and body frame, which applies tojust about every medium- and large-frame Male/Female above 5′2″ in theIdeal Weight database of FIG. 13C—a significantly high percentage ofAmericans, Canadians and Europeans. Note that the system can still indexuser weight against the traditional 2000-calorie DV baseline to remaincompatible with the de facto USDA standard, but the above-describedillustrative implementation's personalized RDI is more relevant and moreencouraging for most users of the system to achieve reachable weightgoals.

FIGS. 3A-3F show examples of what the user first sees and does upondownloading, in an illustrative implementation, mobile computing deviceapplication software (app) embodying the functionality described herein.After the app is initialized (at 31 in FIG. 2A), the newly-stored applaunches its module to create a User Profile (32 in FIG. 2A) which, inthis example, is built upon many efficient system constructs:

-   Purpose: To capture as much personal user information as possible up    front, when the user is first introduced to the system, in an effort    to keep tedious, repetitive user inputs to a minimum in the future.    This also showcases the expandable functionality of the system and    provides a baseline to which the system can compare future user    activity.-   Strategy: To capture the minimum data items required for the system    to be of the desired degree of help to the user, and then encourage    the user to select as many optional favorite data items as he/she is    willing to share. However, even if the user fails to provide all    his/her ID data, assumptions can be made about the items that allow    the system to proceed, but with the caveat of possibly degraded,    less relevant recommendations to the user (see below).-   Parallel Audio/Visual Prompts: In an illustrative implementation,    system prompts and feedback are offered via parallel synthesized    voice and touch-screen visual displays substantially simultaneously,    to which the user can respond alternatively by voice or touch    (which, inter alia, allows users with heavy foreign accents or    speech impediments to more successfully participate).-   Open-Ended Lists: In an illustrative implementation of the Create    User Profile Mode (described below), each category in the User    Profile displays a set of popular exemplary items to get the    first-time user started. This is intended to stimulate the user to    visualize and enter as many of his/her own favorite choices as    he/she wishes (up to a preset limit N). With all the thousands of    foods and exercises that exist, such open-ended lists allow a user    to expand his/her profile selectively in all food/exercise    categories. This process efficiently personalizes each user profile,    without having to maintain/display exhaustive checklists of every    food and exercise.-   Quantified Items: In an illustrative implementation, wherever    appropriate, data items entered by the user are next quantified by    asking “How Much?” with respect to food/nutrition    (pounds/pints/ounces) or exercise (pounds/reps/distance)—e.g.,    “12-ounce steak” or “100-pound bench press for 3 reps”—so that the    system can accurately calculate calories in versus calories out for    the user as the quantified items appear in the future.-   Exercise Tags: In an illustrative implementation, wherever    appropriate, exercise items entered by the user are quantified with    “How Long?” (hours/minutes) and “How Often?” (times per week)—e.g.,    “jog for 30 minutes” or “tennis match for 2 hours” (duration tags in    the system database) plus “3 times per week” (frequency tags). Such    extended data gives the system a revealing snapshot (or baseline    profile) of what foods and exercises the user is already engaged in    and at what level.-   Nutrition Tags: In an illustrative implementation, wherever    appropriate, each nutrition item selected by the user is further    qualified by the system with nutrient tags representing its nutrient    value per unit (including, inter alia, calories, carbs, fats,    cholesterol, sugars, fiber, protein, vitamins, minerals, omega-3s,    herbs, antioxidants, etc.), plus an overall rating tag representing    its relative value to user health from 1 to 5 (explained below).    These short nutrition and exercise tags are further examples of how    the system efficiently expands user profiles outward while keeping    storage to a minimum.-   Parallel System/User Databases (DBs): In an illustrative    implementation, all items accepted from the user are stored    immediately in the user DB within the mobile computing device's    (e.g., smart phone's) local memory 15, and then later as a    cumulative batch update in the parallel system DB within remote    server 14. Having a parallel, for example, smart phone DB allows the    user to view/update/add items to his/her DB locally offline at    his/her convenience, without tying up the phone with unnecessary,    sustained low-activity communication to the remote server. Equally    important, it enables the user to access his/her DB in remote areas    and enclosed buildings (such as restaurants/spas/gyms) that often    have degraded or no phone signal.

Streamlined Database Structure: In an illustrative implementation,tracking the wide range of every possible snack-to-dinner food item andlow- to high-energy exercise requires many “wordy” user inputs each dayacross long periods of time. Hence, in an illustrative implementation,the system DB structure has been radically streamlined to minimize itssize and to curb its exponential growth. In this example, all of thisstarts with the User Profile Create mode (below) where, e.g., eachopen-ended list is constrained to actual user choices 1-N (as above) andquantified with short tags (as above). In such an implementation, theUser Profile Create mode generates a single baseline record from initialuser inputs that the user can later expand, one item at a time, in anyfood or exercise category. However, none of these long “wordy” entries(1-N) are repeated in subsequent daily records where any repeat isrepresented by a simple binary “ditto” (1-N). Thus, in an illustrativeimplementation, the system DB has one long baseline record followed by astring of short daily records that can compress the span of many yearsinto a small disk area.

FIGS. 3A through 3F show an illustrative implementation of the processflow and data structure of the User Profile Create mode (see tablebelow), which prompts the user for all data required by the system inthis example (such as his/her current weight and ultimate goals) and alloptional data he/she is willing to share beyond that (such as Top 5favorite foods and exercises). In other implementations, alternativerequired data may be designated. All this data entered, taken together,comprises the user's primary baseline record from which, in anillustrative implementation, the system makes initial recommendations(such as an initial diet and exercise regime to pursue) as a first steptoward achieving his/her ideal weight, tempered by any applicablerestrictions (due to handicaps, injuries, meds, etc.). The Create modecaptures this primary baseline User Profile, and is run only once upfront, upon initial launch of the system—as the first pass through theUser Profile module. Thereafter, the user can selectively view andchange any of his/her initial profile data in the Modify mode during anysubsequent pass through the User Profile process shown. However, otherthan expected user weight updates and user preference updates to goalsor rewards, any user changes to his/her permanent baseline data in anillustrative implementation are challenged by warnings and confirmations(e.g. “Are you sure?”) in order to maintain user profile integrity.

The table below summarizes various aspects of the creation ofillustrative user profiles, subsequent revisions/modifications thereof,user profile-related process flow and exemplary data structuresinvolving food and exercise. Various user profile features and datastructures are explained in detail below particularly in conjunctionwith the referenced FIGS. 3A-3F.

FIGS. 3A-3F: User Profile Create Mode (initial pass) and Modify Mode(thereafter) LEVEL USER PROFILE FOOD EXERCISE User User ID/Health DataUser Preferences User Preferences Input Baseline Record in FIG. 3A FIGS.3A ⇒ 3C FIG. 3D ⇒ 3F Top System Process Top 5 User Choices Top 5 UserChoices Level Modular Flowchart FIG. 3A FIG. 3D Middle System StructureCategories/dishes/tags Categories/modes/tags Level Modular Block DiagramFIG. 3B FIG. 3E Bottom System Database Popular Examples Popular ExamplesLevel Matrix of Open-Ended Lists FIG. 3C FIG. 3F Tag As-Needed SystemTags Illustrative Examples Illustrative Examples LevelQuantifying/Qualifying Data FIGS. 3A ⇒ 3C FIG. 3D ⇒ 3F

In an illustrative implementation, as shown in FIG. 3A, upon entry, theUser Profile program (UP) presents 4 icons to the user: User ID 300,User Health 324, Nutrition 348, and Exercise 400 that, for example, maybe displayed via touch screen icons (and may be viewed as softwaregenerated “keys” or “buttons”) on the user's mobile computing device 1(e.g., a smart phone). In this example, these appear sequentially in theCreate Mode and all at once in the Modify Mode, along with an EXIT iconat, for example, the lower RH corner. Hence, if the user hits any, forexample, user touch screen icon button other than “User ID” (NO out of300), the UP tests for Create Mode at 302 and, if the UP is in theModify Mode, advances to User Health 324 (NO out of 302). Otherwise, UPprompts the user to “please enter all ID items” at 304 and returns toenter User ID data 306, as will next be delineated item-by-item.

In the Create Mode, in an illustrative implementation, the user selectsUser ID in order to enter the following Minimum User ID data 306 for thesystem in this example:

-   Name: required in an illustrative implementation to maintain a    unique baseline record for each person—but since all kinds of    aliases may arise, such as initials, first/last name only,    nicknames, screen names, etc., the UP may add unique numbers to make    each user name unique-   Sex: required in an illustrative implementation to calculate his/her    ideal weight via the Ideal Weight DB, and to recommend exercise    regimes appropriate to his/her natural motions and limits-   Age: required in an illustrative implementation to differentiate    higher-to-lower calorie requirements to account for the younger,    more energetic teenagers . . . to the older, more sedentary retirees-   Height: required in an illustrative implementation to calculate    ideal weight via the Ideal Weight DB, ranging from 4′10″==>6′6″ for    both men and women (the DB can be further extended for    taller/shorter users, if necessary)-   Weight: required in an illustrative implementation to calculate    ideal weight via the Ideal Weight DB (FIG. 13C), to serve as the    primary baseline to compare successful weight loss (or gain) and,    from a system point of view, to calculate reasonable increments to    achieve ideal weight—in illustrative implementations, the DB has    been structured to permit an accurate determination of ideal weight,    taking into account various user characteristics. In some of these    illustrative implementations, the UP may ask for user weight “5/10    years ago” to glean a historical trend.-   Wrist Size (FIG. 12B): may be advantageously used to differentiate    body frames via the Ideal Weight DB as small/medium/large—a    revealing, user friendly measurement (takes 30 seconds) that can    serve to discriminate between such worldwide healthy extremes as:-   Women (small frame)<==>Women (large frame, both healthy)-   @ healthy weight MIN edge @ healthy weight MAX edge-   Note: Wrist Size is a more user-friendly measurement than the more    difficult-   Elbow Size that was initiated by Met Life in 1942 (see FIG. 12B)-   Waist Size (FIG. 12C): required to differentiate obesity level via    the Ideal Weight DB as healthy/overweight/obese—a revealing, user    friendly measurement (takes 30 secs) that can serve to discriminate    between such worldwide obesity extremes as:-   Women (large frame)<==>Women (large frame, same height)-   @ healthy weight MAX edge @ obese weight MIN edge-   Note: this metric can also separate muscular healthy athletes from    obese people at the same height and weight.-   Goals: although the most commonly desired goal today is to lose    weight, the system is designed to handle a wide variety of users:    from obese to underweight, from out-of-shape weak to perfectly fit,    from sick to healthy, etc. Thus, the system has been designed to    handle user goals that are going to vary accordingly:-   from lose weight==>to gain weight-   from get stronger==>to last longer (more endurance)-   from get healthier==>to drop bad habits (e.g.,    smoking/drinking/drugs)-   Note: in illustrative implementations, the user has the option of    selecting as many goals as desired; e.g., most people would like to    get healthier while they are trying to lose weight.-   Timeframe: used to calculate reachable increments toward the user    goal across a reasonable time interval with a typical range of 1-2    lbs per week-   Rewards: a significant factor in achieving goals—in this case, it is    a user reaching an incremental goal toward resurrecting his/her own    health and body. In illustrative implementations, rewards are    downloaded iTunes and Netflix movies—and these can be expanded to    prizes (for achieving a long sought-after goal) such as dinner at an    organic free-range chicken restaurant-   Default User ID data: for an illustrative implementation, all the    above items are considered minimum User ID data needed to calculate    an ideal weight for any given user, and to facilitate him/her    achieving that goal (or any other goal above) via reachable    increments toward that goal that are rewarded proportionally. It    should be understood that in some illustrative implementations,    apart from all the above minimum User ID data needed to calculate a    user's ideal weight, the system can just as easily be run with a few    token values made up by the user, or even none at all, if desired by    a particular user. That is, the user could simply experiment with    the system by plugging in any token height/weight/sex and look to    see how the system would go about resolving a typical overweight    male/female, e.g.:-   Male: 5′9″ @ 195 lbs (assumed to be about 16 lbs overweight)-   Female: 5′4″ @ 170 lbs (assumed to be about 24 lbs overweight)

Furthermore, it is noted that this system can be run without any of theminimum User ID data—e.g., as an exemplary “trial demo” (for a user whohas no desire to enter data) by, for example, making a few real-worldassumptions regarding the user, who could be an average U.S. male/female(whose actual weight/height/overweight level are listed above). Theaverage U.S. male/female are then compared to an “ideal” averagemale/female at a similar height—in this case, an average Germanmale/female, whose average weight is deemed “ideal” by the Ideal WeightDB shown in FIG. 13C. That is, assuming no user inputs at all, thesystem can perform a realistic trial demo with representative Males andFemales from around the world, using their actual average Heights andWeights, to show how the system can work to bring obese people back tohealthy weight, as follows:

Minimum User Clicks: In illustrative implementations to promote enhanceduser friendly data entry, the User Profile module is streamlined toyield the highest level of system output for the least number of userinput “clicks” (where a “click” can be, for example, a written or spokenentry or a choice from a displayed list) to keep the user enthusiasticand locked in throughout the initial Create mode, as follows:

User Profile: how increasing Create Mode Inputs ⇒ yields higher-levelSystem Outputs System Initial User Inputs for each Higher Level ofSystem Output User Output Level User ID User Health FOOD EXERCISE ClicksTrial Demo 0 0 0 0 0 (no user clicks) Healthy Weight Height/Weight 0 0 02 (2 user clicks) Ideal Weight Above plus Age/ Current Health 0 0 11tailored to User Sex/Wrist/Waist plus 4 “nones” * Weight Loss Above plusGoal/ same as above Top Meal ** Top Exercise ** 24 Diet + ExerciseTime/Reward for 5 categories for 5 categories Fast Track same plusWeight same plus Health Top 5 Meals Top 5 Exercises 36 + toward allgoals “5/10 years ago” “5/10 years ago” plus tags *** plus tags *** tags * User Health only requires 4 “none” answers for people with no healthproblems (otherwise, people with injuries/ailments/handicaps/meds enterdata as needed) Thus, in 11 clicks, a user can see Ideal Weightprecisely tailored to his/her body  ** Food/Exercise, in this example,only require one Top Meal/Exercise to initiate diet/exercise plan(otherwise, the user can enter as many Top Choices 1 ⇒ 5 as he/she iswilling). Thus, in 24 clicks, a user can get an initial Weight Loss plantailored to him/her. *** all tags(sauces/vitamins/quantity/sets/reps/etc.) are optional in Create mode(tags become more important attached to actual eating/exercise in Modifymode) Thus, in 36 clicks, a user can get the fastest track (diet +exercise) to his/her goal.

Maximum User Choices in Minimum Time: In illustrative implementations,to facilitate the user's food/exercise entries shown in the above table,the UP has also been streamlined at all levels to provide the User themaximum number of popular choices (primarily, via the open-ended listsof FIGS. 3C/3F) to identify his/her “favorite” preferences in arule-of-thumb telescopic 10× focusing process,* as follows:

User Profile: how a large Server DB gets telescoped 10X down ⇒ to asmall Phone DB Telescopic System Actions User Actions User 10X Process *Filters ⇒ Offers ⇒ Chooses ⇒ Uses ⇒ Prefers when used/ online accessUser Profile offline access Modify Mode Create where stored to ServerDB* Food/Exercise to Phone DB* Food/Exercise Mode Level Global ⇒Standard ⇒ Relevant ⇒ Favorite ⇒ Top 5 FOODS 100,000 ** 10,000 1,000 ***100 25 EXERCISES  10,000 ** 1,000   100 *** 10 5  * This chartillustrates how the system telescopes the large reservoir of globalfoods/exercises down several 10X levels to a small relevant number auser can use, reducing the size of the mobile computing device DB (e.g.,an IPhone) down to what the user can still use offline.  ** Globallevels illustrate how the system efficiently strips out specializeditems (like ethnic foods/exercises) from standard Americanfoods/exercises, so the vast majority of users can scan faster throughshorter, more familiar open-ended lists (specialized/ethnic choices arestill available to the minority by typing them in). *** Relevant levelsillustrate how, despite the vast array of potentially betterfoods/exercises out there, human nature still tends to favor just “aprecious few”— the goal of the Create mode here is to tease out theprecious few from the user and gradually nudge him/her from a suspectfew to the more relevant healthier many, as will next be described forNutrition (FIGS. 3A-3C) and Exercise (FIGS. 3D-3F).

Turning back to FIG. 3A, once the user enters the above Minimum User IDdata 306 (or if default data is utilized) in the Create Mode, UP can nowestablish his/her Ideal Weight via the data base illustrated in FIG.13C, and can next calculate the initial baseline System Tracking Data308 based on that weight:

-   Ideal Weight: in illustrative implementations, the data base    illustrated in FIG. 13C zones in on an ideal weight for both Men and    Women and for people with different body frames and vastly different    levels of obesity. As in any system, the higher the level of    precision to pinpoint correct ideal weight means the higher the    level of precision for all calculations that follow (below)-   Weight Loss Increments (or “deltas”): UP calculates a reachable    weight “delta” within a periodic interval (week/biweek/month/etc.)    based on his/her specified timeframe, all of which is precisely    tailored to each user

Recommended Daily Intake (RDI): UP calculates an RDI precisely tailoredto each user per the RDI database in FIG. 2G1. This RDI differs from theUSDA's ubiquitous “DV for a 2000 calorie diet” (that is primarilyapplicable to women @ 132 lbs or less). The system RDI can be fine-tunedto each user's age, sex, activity level, obesity level, current weight,ideal weight, and body frame, which applies to just about every medium-and large-frame Male/Female above 5′2″ in the Ideal Weight data base ofFIG. 13C—which is a significantly high percentage of Americans. UP canstill index user weight against the traditional USDA 2000-calorie DVbaseline, but UP's personalized RDI is more relevant and moreencouraging for most users of the system to achieve reachable weightgoals.

-   Calorie Counters: UP maintains a set of running Calories IN/Calories    OUT counters that keep track of running daily/weekly/monthly amounts    of Calories IN (from food eaten by the user) versus parallel running    amounts of Calories OUT (from exercise by the user) that can be    selectively displayed or plotted by the user. UP maintains these    counters based on food eaten (where each gram of protein or carbs=4    Calories, each gram of fat=9 Cals, each gram of alcohol=7 Cals,    etc.) and based on user exercise to balance out the food eaten    (where each pound worked off=3500 Calories). Thus, at any given time    or for any given timeframe, weight loss can be easily calculated via    the delta between Cals IN vs. Cals OUT:

Weight Loss Delta (lbs)=(Cals OUT-Cals IN)/3500 Cals per pound

-   Goal Percentage (%): Armed with these pairs of running Calorie    Counters, at any given time or across any given timeframe, UP can    now maintain a corresponding set of running Goal Percentages (%)    with respect to the user's specific ideal weight and/or current    weight increment above, as follows:

Current Goal (%)=current Weight Loss Delta/current Weight Increment

Ideal Weight Goal (%)=cumulative Weight Loss Deltas/(BaselineWeight−Ideal Weight)

In an illustrative implementation, the above Calorie Counters and GoalPercentages are displayed on the user's mobile computing device 1 screenas running display counters, or as more stimulating color X-Y plots ofWeight across Time—e.g., as cumulative weight loss vs. successive weightincrements.

User Profile Modify Mode: the above System Tracking Data 308 isinitialized by the Create Mode at the user's declared Goal(s) andWeight, plus UP-calculated Ideal Weight. Beyond these initial baselineentries, all remaining user tracking functions—including successiveweight increments, calorie counting, and goal percentages—are performedby the Modify Mode during subsequent UP passes, following the sameprocess flow shown in the flowchart of FIG. 3A.

Parallel Audio/Visual Interface: As set forth above, in an illustrativeimplementation, all User Profile prompts and feedback, as well as alluser choices for data entry and/or next course of action, are offered tothe user via simultaneous, parallel synthesized voice and touch-screenvideo, to which the user may respond alternatively by voice or touch.

Turning back to FIG. 3A and the User ID entry processing, after the userhas finished entering Reward as his/her final choice in Minimum User IDdata 306, UP tests at 310 whether the user changed his/her currentWeight, which is an expected response. If so, it sets the Weight Flag312 for further processing by the mainline routine in FIG. 2A—if not, itproceeds to test at 314 whether the user changed his/her current Goal.If so, UP sets the Goal Flag 316 for the mainline routine (as above)—ifnot, it proceeds to test at 318 whether the user changed any otherMinimum User ID data 306—e.g., any change to the user's height, or sexwould be suspicious. If so, UP first warns the user as to the danger ofsuch a change to his/her profile integrity and asks “Are You Sure?” toconfirm that the change was intended (not shown). If so, it sets the IDFlag 320 for the mainline routine (as above)—if not, it proceeds to testat 322 whether the user has entered all Minimum User ID data 306. Ifnot, UP prompts the user at 304 to “please enter all ID items” andreturns to re-enter User ID data 306—if so, it proceeds to test UserHealth 324.

After finishing User ID processing, if the user hits any icon but “UserHealth” (NO out of 324), the UP tests for Create Mode at 326 and, if itis in not in the Create Mode, but is in the Modify Mode, advances toNutrition 348 (NO out of 326). Otherwise, UP prompts the user to “pleaseenter all Health items” at 328 and returns to re-enter User Health data330, as will next be delineated item-by-item.

In the Create Mode, in an illustrative implementation, the user mustselect User Health to enter the following Minimum User Health data 306for the system to optimally assist in recommending food/exercises thatare not otherwise unsafe or even harmful. It is expected thatindividuals will be open and honest about their handicaps, ailments andinjuries.

-   General Level of Health: in an illustrative implementation used to    actively elicit from a user a rating defining the user's self-image    of his/her own health, on a color-coded scale of Worst 1==>5 Best.    In illustrative implementations, UP next may ask the follow-up “What    level 5 and 10 year ago?” to glean a historical trend.-   In illustrative implementations, each item below has “None” as the    first answer to accelerate healthy users through this Health section    as quickly as possible.-   Injuries: In illustrative implementations, UP first asks whether a    user's injury is permanent or temporary (with a date for expected    recovery). It then asks what areas of the body are affected, such as    skeletal, muscles, organs, nerves, brain, etc., followed up, as    needed, by what limbs such as (right or left)    hand/foot/arm/leg/torso/back/neck/etc. Such a body injury profile    guides the system away from bad limbs to help the remaining good    ones-   Ailments: In illustrative implementations, ailments such an diseases    (cancer, diabetes, etc.), and allergies. UP follows the same inquiry    process as that above to identify specific Injuries, except that    ailments often imply a weakening of the entire body which can    preclude, e.g., eating certain foods and nutrients, exercising    outdoors, exercising the remaining healthy limbs (as above), etc.-   Handicaps: In illustrative implementations, UP follows the same    inquiry process as that above to identify specific Injuries except    handicaps often imply a severe weakening of entire limbs or the    entire body which can complicate any system trying to help them,    e.g., mobility limited to a wheelchair, exercise limited to special    gym equipment, etc.-   Addictions/Health Impacting Bad Habits: Only addictions and habitual    behavior that significantly affect body health and/or normal    exercise—namely, smoking, drinking, and drugs—are embraced in    illustrative implementations tracking these activities. Here, UP    asks the simple question of frequency, “How often?” on a scale of    Seldom 1==>5 Every Day. However, focusing on these three activities    does not in any way preclude adding any number of other habitual    behaviors that affect health and/or exercise to a lesser degree, or    that involve fewer people.-   Medications: Each of the above Health issues can require Meds that    may be inconsistent with or interact with certain    foods/nutrients/supplements the system might normally recommend.    Therefore, UP asks in illustrative implementations for whatever Meds    the user is taking regardless of the specific health reason, to    avoid such unnecessary, potentially hazardous conflicts.-   Historical Trends: Finally, for each of the significant injuries,    ailments, handicaps, and bad habits, UP asks the follow-up “What    level 5 and 10 year ago?” (optional) to glean a historical trend    that may influence recommended exercises and/or diets.

In an illustrative implementation, once the user enters the aboveMinimum User Health data 330 in the Create Mode, UP can now establishthe system baseline User Restrictions 332 based on, for example, theinjuries/ailments/handicaps/bad habits/meds disclosed by the user, andset RED flags on all foods/diets and exercise regimes that should beexcluded due to them, particularly during subsequent passes in theModify Mode. In an illustrative implementation, these RED flags arebacked up by a RED Zone Body chart (not shown) that flags affected bodyareas.

FIG. 3A User Health (continued): After the user has finished enteringMedications as his/her final choice in Minimum User Health data 330, UPasks the user at 334 if he/she has any Weakness in any Limb (beyond theHealth data 330) that could affect normal exercise regimes (i.e., anymotion limited right/left, up/down, CW/CCW). If so, it sets the WeakFlag 336 (i.e., a RH/LH flag for each affected limb) for furtherprocessing by the mainline routine in FIG. 2A—if not, it asks the userat 338 if he/she similarly has any Limited Range of Motion (beyond theHealth data 330). If so, it sets the Range Flag 340 for the mainlineroutine (as above)—if not, it proceeds to test at 342 whether the userchanged any other Minimum User Health data 330—e.g., any change to theuser's handicaps or permanent injuries would be suspicious. If so, UPfirst warns the user as to the danger of making such a change to his/herprofile integrity and asks “Is this an update or a correction?” plus“Are You Sure?” to confirm that the unexpected or inconsistent changewas intended (not shown). If so, it sets the Health Flag 344 for themainline routine (as above)—if not, it proceeds to test at 346 whetherthe user has entered all the Minimum User Health data 330, whichincludes “None” as the most common answer for each Health item. If not,UP next prompts the user at 328 to “Please enter all Health items” andreturns to re-enter User Health data 330—if so, it proceeds to Nutrition348.

FIG. 3A Nutrition: As shown in FIG. 3A, in an illustrativeimplementation, if the user selects the Nutrition icon (YES out of 348),UP proceeds to capture high-level Nutrition inputs at 350—otherwise, itexits (NO out of 348) to Exercise at 354 that is explained in detail inconjunction with the description of FIG. 3D. As described above, a goalof the Create mode at 350 here is to encourage a user to enter certainfavorites identifying his/her Top 5 favorite meals amongBreakfast/Lunch/Dinner/Snacks/Drinks (which are the system's 5 Foodcategories). While picking out 5 favorites for each of the 5 categoriesis not required, in this example, UP encourages the user to specify atleast his/her #1 “all-time” favorite items (per the Minimum User Clickchart above) which, for Breakfast, could be as complex as a havarticheese/egg soufflè with sautèed shrimp and avocado . . . or as simple asa piece of buttered toast.

Vitamins/Minerals: Similarly, in an illustrative implementation, a goalof the Create mode at 352 is to encourage a user to enter certainfavorites identifying his/her Top 5 favorite supplements amongVitamins/Minerals/Herbs/Omega-3s/Antioxidants (which are the system's 5supplement categories), following the same user input process as above.For Vitamins, this could be as complicated as all eight Vitamin Etocopherols and tocotrienols (each has alpha/beta/delta/gammavariations) or as simple as a One-a-Day multi-vitamin (the process forspecifying Top 5 is described in detail next with FIGS. 3B/3C).

Color-Coded Foods/Nutrients: As shown and illustrated in FIGS. 2C/2D(above), in an illustrative implementation, all the elements of theentire system from top-to-bottom are color-coded with a 5-color ratingof RED 1==>5 GREEN (beyond which lies a sixth “Blue Ribbon” category).Thus, in an illustrative implementation, each of the above Nutritionicons (from Breakfast==>Dinner Top 5 meals and fromVitamins==>Antioxidant Top 5 supplements) will always be displayed tothe user in its system-rated color RED==>GREEN on the user's colorscreen. This reinforces the underlying “bad-to-good” nutritional valueof each food or exercise that the user is presently engaged with or isplanning to move up to.

Top-to-Bottom Color Codes: In an illustrative implementation, thiscolor-code rating extends across the entire system—from top-to-bottom.For example, at the highest level, each meal (Breakfast/Lunch/Dinner) iscolor coded with a RED==>GREEN color based on the weighted-average colorof all its food elements (drink/appetizer/entrèe/vegetable/dessert/etc).This same color rating extends all the way to the lowest level where,for example, each food item is color-rated WRT itscals/carbs/sugars/fiber/fats/cholesterol/protein/etc—as well as itstotal vitamins/minerals/omega-3s/antioxidants/etc—each nutrientindividually.

-   Hence, to satisfy likely user curiosity, the inquisitive user can    click on any color-coded icon (food/vitamin/exercise/etc.) to find    out exactly what lower-level element (high LDL cholesterol/low    protein/slow walking pace/etc.) caused the RED ALERT.-   Moreover, this top-to-bottom color-coding serves to educate the user    as to each item's “bad” RED elements that were otherwise “hidden”    from his/her view prior to using this system—revealing why he/she    should move up to the next-higher level food choice. Alternatively,    it reveals what he/she has to do to correct and/or improve a RED    exercise.

User Health/Attitude Profile: One significant function of storing auser's food/nutrient favorites is to piece together a revealing snapshotof the user's current health—and his/her collective attitude towardhealthy eating via Top 5 Meals and adequate nutrition via Top 5Vitamins—presumably formed over many years. Taken together with Top 5Exercises (gathered via parallel FIGS. 3D-3F below) and a user historyfrom “how much 5/10 years ago?” (gathered above), the resulting 5-10year health/attitude profile of a new user allows the system to moreaccurately gauge just how much to soften (or harden) the resultingrecommended diet plan for a pre-established “average” YELLOWmale/female, to which the system will otherwise default. Such data, inan illustrative implementation, may be used as follows:

-   On the positive side: if the user reveals a long-term healthy diet    profile, the system can more aggressively “harden” the    recommendations toward the highest GREEN level foods to accelerate    the user directly to his/her ideal weight—such “hardening” is    especially important for already fit athletes, who easily qualify    for this group.-   On the negative side: however, if the user reveals a long-term    unhealthy diet profile, in an illustrative implementation, the    system may, for example, cautiously “soften” the recommendations    toward the lowest RED level—such “softening” avoids overburdening an    obese user with average goals that are beyond his/her physical reach    and current diet attitude. Such a plan may be modified as desired to    accelerate obese users towards goal achievement based upon a medical    need to do so, or an indication from an analysis of performance data    that the user is ready for more accelerated goal achievement.-   For more details on how this strategy is fine-tuned, see the    discussion on how food are adapted to each user by the Create mode    in FIG. 3C.

Food Database: FIG. 3B is a modular block diagram for the Food Databasewhich follows in FIG. 3C. The basic structure of the DB shown in FIG. 3Cis a virtually 4-dimensional (4D) array, including:

-   [1] the top-level Categories (horizontal axis across FIG. 3C)-   [2] the middle-level Dishes (vertical axis down FIG. 3C, grouped as    3 courses)-   [3] an Open-Ended List for each mid-level Dish (into the paper in    FIG. 3C)-   [4] the bottom Tags attached to each open-ended List (orthogonal to    above 3 axes)

As shown in FIG. 3B, in this illustrative implementation, the UP accesssequence for this Food DB is broken into 5 major Categories: Breakfast360/Lunch 362/Dinner 364 plus Snacks 384/Drinks 385 (not shown here forclarity, but as shown in FIG. 3C). UP accesses each of the 5 categoriesas follows:

-   [1] the top-level Categories (horizontal axis across FIG. 3C)-   [2] the middle-level Dishes (vertical axis down FIG. 3C, grouped as    3 courses)-   [3] an Open-Ended List for each mid-level Dish (into the paper in    FIG. 3C)-   [4] the bottom Tags attached to each open-ended List (orthogonal to    above 3 axes)-   The UP access sequence for this Food DB is broken into 5 major    Categories: Breakfast 360/Lunch 362/Dinner 364 plus Snacks    384/Drinks 385 (not shown here for clarity) as shown on FIG. 3C. UP    accesses each level as follows:-   UP accesses these 5 Categories sequentially (as shown by the top    arrows), overflowing into Snacks 384/Drinks 385 on FIG. 3C before    exiting.-   Next, for each of the 3 meal categories, UP cycles through the 3    Dishes: 1^(st) Course 366/Entrèe 368/3^(rd) Course 370 (as shown by    the middle arrows).-   Within each of the 3 Dishes, UP cycles through 4 Meal Items that,    taken together comprise 12 unique items for each meal (as listed at    366/368/370), the significance of which is explained in more depth    in FIG. 3C (below).-   Within each of the 4 Meal Items, UP cycles through the 3 Tags at the    bottom: Add-Ons 372/Quantity 374/Nutrients 376 (as shown by the    bottom arrows), which are selectively created as-needed to qualify    or quantify the item.-   Finally, the last Tag—Nutrients 376—is generated by UP as a helpful    FYI for the user, with RED==>GREEN codes displayed with each    nutrient to educate him/her as to the relative GREEN value or RED    danger posed by that Meal Item, and the Meal as a whole (as    discussed at Color-Coded Foods/Nutrients above).-   Moreover, it is hard to grasp the significance of the first    Tag—Add-Ons 372—until the system calculates the total calories added    to meal items by the Add-On examples    (sauce/dressing/gravy/syrup/cream/etc.) that can downgrade an    ordinarily healthy slice of turkey to RED ALERT, as will be    discussed in depth next with FIG. 3C.

Food Database Meal Matrix: FIG. 3C is a modular block diagram of theFood Database accessed in FIG. 3B. For breakfast, lunch, dinner, snacksand drinks, examples of popular choices are displayed to the user sothat the user may select from the open ended list and choose meals thatneed not be repetitively input. For example, the user need only definebreakfast #1, lunch #3, dinner #5, etc., one time and then convenientlyselect such meals by identifying breakfast #1, lunch #3, or dinner #5.In this example, the user enters up to 5 favorites for each category,starting with his #1 favorite food, e.g., yogurt. FIG. 3C illustratesthe same Food Database shown as a modular block diagram in FIG. 3B,formatted here into a 5×12 Meal Matrix that is virtually a 4-dimensional(4D) array of open-ended Lists (except for the 3C Snacks/Drinks) withthe following 4 independent axes:

-   [1] the 5 Categories corresponding to horizontal Matrix columns    381==>385-   [2] the 12 Dishes corresponding to vertical Matrix rows 387==>398,    except that Snacks/Drinks (columns 384/385) are not indexed to the    12 Dishes (column 380)-   [3] the 60 Open-Ended Lists corresponding to each cell in the 5×12    Matrix array, where each cell initially contains a popular example    to stimulate User choices-   [4] the 3 Tags attached to each of the 60 Open-Ended Lists (180 max    Tags) where:-   Add-Ons 372 initially contain a popular example, like    sauce/dressing/syrup/etc.-   Quantity Tags 374 are generated by the user after he/she eats each    food/meal-   Nutrient Tags 376 are generated/displayed by the system upon user    request

Top 5 Favorite Meals: UP initially asks the user to enter up to 5Favorites for each Category 381==>385, starting with his/her #1 favoritefood, and optionally entering up to 4 or more favorites per category atuser discretion. At any time from this juncture on, the user canconveniently select any “repeat” favorite by its sequence number amongthe Top 5 Favorite lists—for example:

Breakfast #1==>Lunch #2==>Dinner #3==>Snack #4==>Drink #5

which saves the user all the time and effort to re-enter the sameFavorite food/meal

This initial system/user interplay over Top 5 Favorites provides theopportunity for UP to find out exactly what the user's attitude towardfood is, and perhaps even explain where all his/her excess weight (ifany) came from—e.g., even if the user doesn't eat the favorites veryoften. Knowledge of the users urges may be significant in guiding theuser towards a more healthy diet.

The system advantageously matches the 60 food examples shown in theinitial matrix of FIG. 3C to the RED 1==>5 GREEN quality of food thatthe user, for example, identifies as favorites to eat.

Based on all the above User ID/User Health inputs (that will normallyyield an ideal weight and target weight loss goal for the user) coupledwith the skeletal user “5/10 years ago” history data, UP can gauge whichinitial 1==>5 level to display. That is, as an illustrative embodimenthere, the 60 examples shown in FIG. 3C vary through all 5 color levelsfrom RED 1 (e.g., malted Milk Shake) to 5 GREEN (e.g., Iced Tea withlemon). An illustrative strategy is to present most of these 60 examplesat the 1==>5 food level the user can identify with and/or actively seeksout. By this illustrative strategy, UP may elicit a morerealistic/honest answer from users than by suggesting they pick among“better” foods they know they really should be eating. In an alternativeimplementation, the system may suggest a range of better foods for theuser to identify as favorites.

This initial Create mode strategy dovetails with the higher-orderstrategy of an illustrative implementation of the entire system tofacilitate weight loss (or gain), which can be accomplished moreeffectively when the system knows the exact diet/exercise profile of theuser:

-   at the obese RED extreme, in an illustrative implementation, UP will    present all the customary RED foods that likely enticed certain    users to become obese in the first place, to avoid wasting their    time with GREEN foods they already ignore, and to otherwise    establish an accurate RED baseline-   at the healthy GREEN extreme, UP will present all the high-caliber    GREEN foods that fit athletes are already aware of and/or eating    religiously, to avoid wasting their time with RED foods they already    dislike, and otherwise establish an accurate GREEN baseline-   One such illustrative system strategy is to boot-strap each user    from his/her current RED==>GREEN level (as just described) up the    diet ladder, one notch at a time, as shown with the Meat Ladder    below:-   As can be seen from the essential macronutrients database of FIG.    2D, the rib roast is high in calories, low in protein, and high in    fat when compared to the light turkey shown in the above chart. The    calories, protein, and fat parameters for rib roast are unhealthy    and merit a red rating. In contrast, white meat turkey calorie,    protein, and fat parameters are healthy and merit a blue rating. The    diet ladder chart shows that the rib roast alternatives of sirloin    steak, round steak, dark chicken, and light chicken provide    increasingly healthy choices that a user may progress through on a    stepwise basis to habitually consume more healthy products.-   Thus, this Meat Ladder chart illustrates an illustrative system    strategy of boot-strapping the user at any diet level—e.g., obese    RED==>healthy GREEN—up the ladder, one step at a time—from the    fattening RED rib roast or ORANGE sirloin steak, up the ladder    toward the GREEN light chicken or ultimate BLUE light turkey-   This Meat Ladder concept illustrates how the system can make a user    healthier: i.e., there is a similar 5-color food ladder for each one    of the 60 Open-Ended Lists by which the system can improve a user's    diet, one step along one ladder at a time.

In one implementation, the system operates to recommend healthier foodsto a user as follows. In an illustrative implementation, after a userhas selected a food such as “rib roast,” the system will encourage theuser to “step up the ladder” by selecting a healthier alternative thatis next highest up the ladder of related foods, such as described in themeat ladder above. In this implementation, the healthier alternative isadded to the users “favorites” list in a highlighted fashion ((e.g.,displayed higher up the favorites list based upon a displayed color codeindicating a “healthier choice” than the red colored rib roast) with afrequency count of zero indicating that the user has not selected thefood at this particular point in time. However, the presence of the foodin the user's favorites list will serve to encourage future selection bythe user.

Turning back to FIG. 2F, as noted above, the illustrated top nutritionfoods database identifies top foods and top related foods (best peers)from the same food family that may be used to encourage users to modifytheir diet to eat the identified high nutrition foods as part ofbreakfast, lunch and dinner and as possible alternatives to less healthychoices made by the user. This database illustrates various top rated,highly nutritious natural single foods widely-available from food storesand includes links identifying alternative related highly nutritiousfoods in the same or similar food groups.

Thus, one or more of the foods shown in FIG. 2F may be suggested to theuser as an alternative to a less healthy choice in a similar manner to auser's choice of “rib roast” may lead to a display of the above meatladder in the meat example shown above. In this example, FIG. 2Fidentifies Top 14 natural foods along with their best peers in the samefood family—i.e., these 14 ultimate foods (and their best peers) are atthe top of the ladder for many of the Open-Ended Lists.

FIG. 3D Exercise: The flowchart described above in FIG. 3A continues inFIG. 3D and focuses on the user profile exercise subsystem. As shown inFIG. 3D, upon exiting Nutrition at 354 (FIG. 3A), if user hits theExercise icon (YES out of 400), UP proceeds to capture high-levelExercise inputs starting with Daily Activities at 406. Otherwise, UPexits (NO out of 400) to test Create Mode at 402 and, if it is in theModify Mode, returns at 404 to the system Mainline at 25 (FIG. 2A).Otherwise (YES out of 402), UP returns the user to consider makinginitial data entries in Daily Activities at 406.

-   Although in this example there is no minimum required data here in    Create Mode, as a purely “common sense” rule of data entry, in one    implementation, UP obliges the user to at least consider each of the    five Exercise categories of Daily Activities, Periodic Activities,    Sports, Conditioning Exercise, and Weightlifting    (406/410/414/418/428). Each of the exercise categories in FIG. 3D    may be selected by a user in a display depicting the exercise    categories identified above as icons that may be selected for data    entry by the user. If the user does not see any applicable exercises    therein, he/she can just quickly select “none” to proceed on.-   Moreover, other than lifting weights, there are enough ubiquitous    activities (e.g., “sit at work (perhaps the lowest level of    activity)” or “walk outdoors”), that all but handicapped users are    likely to do them. Forcing such an obligatory first look at each    category, serves to introduce the user to the vast array of    exercises he/she can get credit for.

As described earlier for Nutrition (FIG. 3A), a goal of the Create modeat 408 here is to encourage the selection of favorites from the user asto his/her Top 5 favorite exercises for each of the system's fivecategories. The user's favorite exercise list is initially built throughprocessing described below in conjunction with FIGS. 5A and 5B regardingthe user selecting the “activities,” “sports,” and “conditioning” icons,selecting favorites from these categories and generating color codes,and calories burned data associated with the exercise andcharacteristics of the user including the user's body weight. Thefavorites list continues to expand over time as the user actuallyperforms new exercises or old exercises with new frequency, duration,cycle, or quantity tags. Such expansion simplifies the user's entry ofexercise into the system.

While picking out 5 favorites for each category is entirely optional, UPencourages the user to specify at least his/her #1 “all-time” favoriteexercise items (per the Minimum User Click chart above) which, for DailyActivities 408, could be as complex as “lifting a heavy load overhead” .. . or as simple as “sitting at a desk”.

Similarly, the goal of Create mode at 424/426 is to encourage theselection of favorites from the user as to his/her Top 5 favoriteconditioning exercises among indoor/outdoor regimes and upper/lower bodyweight lifts 428, following the same optional input process as above.For weightlifting 428, this could be as complex as “max bench press with2 spotters” or as simple as “wrist curls with 25-lb bar” (the processfor specifying Top 5 is described in detail next with FIGS. 3E/3F).

Color-Coded Activities/Exercises: as shown and illustrated in FIGS.2C/2D/2E (above), in an illustrative implementation, all the elements ofthe entire system from top-to-bottom are color-coded with a 5-colorrating of RED 1==>5 GREEN (beyond which lies a sixth Blue Ribbon ratingwhich would be awarded for, say, a bench press that's 5% beyond theuser's max). Thus, in an illustrative implementation, each of the aboveExercise icons (from Daily==>Sports Top 5 activities and fromConditioning==>Weightlifting Top 5 exercises) will consistently bedisplayed to the user in its system-rated color RED==>GREEN on theuser's color display screen. This approach reinforces the underlying“bad-to-good” performance value of each exercise that the user ispresently engaged with or is planning to move up to.

In this example, color-code rating extends across the entire system,from top-to-bottom. For example, at the highest level, each workout (allsets/reps/weights combined) is color coded with a RED==>GREEN colorbased on the weighted-average color of all its separate lifts (fortorso/upper limbs/lower limbs). This same color rating extends all theway to the lowest level where, for example, each set of a given lift iscolor-rated for its reps/weight level/rest interval WRT user capability.

Hence, in an illustrative implementation, to satisfy user curiosity, theinquisitive user can click on any color-coded icon (5-mile run, 100-lblift, etc) to find out exactly what lower-level element (slowpace/weight too low/rest interval too long) caused the RED ALERT.

Moreover, this top-to-bottom color-coding serves to educate the user asto each item's “toxic” elements that were otherwise “hidden” fromhis/her view prior to using this system —revealing why he/she shouldmove up to the next-higher level. In addition, it points to what he/shehas to do to correct/improve a RED exercise.

User Health/Attitude Profile: the underlying motive for encouragingselection of the user's favorites is to piece together a revealing“snapshot” of the user's current fitness—and his collective “attitude”toward healthy lifestyle via Top 5 Activities and healthy conditioningvia Top 5 Exercises—presumably formed over many years. Taken togetherwith Top 5 Exercises (gathered via parallel FIGS. 3D-3F below) and auser history from “how much 5/10 years ago?” (gathered above), theresulting 5-10 year health/attitude profile of a new user allows thesystem to more accurately gauge just how much to soften (or harden) theresulting recommended exercise plan for a pre-established average YELLOWmale/female, to which the system will otherwise default—for example:

-   On the positive side: if the user reveals a long-term healthy    exercise profile, the system can freely “harden” the recommendations    toward the highest GREEN level exercises to accelerate the user    directly to his/her ideal fitness—such “hardening” is especially    important for already fit athletes, who easily qualify for this    group.-   On the negative side: however, if the user reveals a long-term    unhealthy exercise profile, in this example, the system will    cautiously “soften” the recommendations toward the lowest RED    level—such “softening” avoids overburdening an obese user with    average goals that are beyond his/her physical reach and current    exercise attitude.

For more details on how this strategy is fine-tuned, see the discussionof how exercise examples are adapted to each user by the Create mode inFIG. 3F.

Turning to a more detailed discussion of the flow between the blocks onFIG. 3D, there is no reference to the illustrative examples of typicalactivities/exercises here that are offered below as “popular examples”in the 5×10 Matrix Array of 50 Open-Ended Lists that, taken together,comprise the Exercise Database (discussed below with FIG. 3F). For anygiven Activity/Exercise mode, the user can say “none” or enter “other”.

Daily Activities 408: upon entry (YES out of 406), UP initially offersthe “To/From Work” choices to give the user extra credit for, say,walking to work—then offers the choices of what activities the userperforms on a daily basis at work (or school) including at a minimum,“sit at desk”, referenced to Indoor or Outdoor, where all user responsesare merely his/her estimates of average hours per day. When the user isfinished, UP next highlights the icon for Periodic Activities 410.

Periodic Activities 412: upon entry (YES out of 410), UP initiallyoffers simple Home Tasks, such as “mow lawn” or “wash dishes”—thenoffers some low-energy/recreational Sports away from home—indexed toIndoor or Outdoor. When the user is finished, UP next highlights theicon for Competitive Sports 414.

Competitive Sports 416: upon entry (YES out of 414), UP initially offersCompetitive Individual Sports, such as “Martial Arts” or “Tennis”—thenoffers high-energy Team Sports such as “Football” or “Basketball”—allreferenced again to Indoor or Outdoor. UP next qualifies each sport asto its competitive level: training only/hobby or recreational/middleschool/high school/college/sport club/semi-pro/pro—in order to establisha ball-park measure of the user's athletic fitness. When the user isfinished, UP next highlights the icon for Conditioning Exercise 418.

Conditioning Exercise 424: if the user does not enter this Category (NOout of 418), UP prompts him/her at 420 with “any other exercise notidentified yet?” and, if not, tests for Create Mode—if YES out of eithertest 420/422, UP returns to the user to Conditioning block 424. Eitherway, upon 424 entry (YES out of 418), UP initially offers Outdoorexercises, first using Body Only, then with Equipment. >Next, UP offersIndoor Strength/Endurance exercises, first using Body Only, then withindoor Equipment—followed by Stretch/Balance exercises like “Yoga”

Finally, UP offers Indoor Weight Training exercises, first for the UpperBody, then for the Lower Body—covering all the opposing muscle pairs(see FIG. 3H).

UP next qualifies each exercise as to its competitive level: (trainingonly/hobby or recreational/middle school/high school/college/sportclub/semi-pro/pro) so as to establish a ball-park measure of the user'sathletic fitness. When the user is finished, UP next returns at 430 tothe system Mainline Routine.

FIG. 3E Exercise Database: FIG. 3E is a modular block diagram for anillustrative Exercise Database which follows in FIG. 3F. Each categoryrotates through all four modes identified below. Tags are only attachedto each exercise selected or added by the user. The basic structureshown for this DB in FIG. 3E reveals it is virtually a 4-dimensional(4D) array, as follows:

-   [1] the top-level Categories (horizontal axis across FIG. 3F)-   [2] the middle-level Modes (vertical axis down FIG. 3F broken into 2    “forces” as described below in the mode description)-   [3] an Open-Ended List for each mid-level Mode (into the paper in    FIG. 3E)-   [4] the bottom Tags attached to each open-ended List (orthogonal to    above 3 axes)

UP access sequence for this Exercise DB is broken into 5 majorCategories: Periodic 440/Sports 442/Conditioning 444/Weights 446 plusDaily (not shown here for clarity) as shown at 481 on FIG. 3F. UPaccesses each level as follows:

-   UP accesses these 5 Categories sequentially (as shown by the top    arrows), starting with Daily Activities 481 on FIG. 3F before    entering Periodic 440 here.-   Next, for each of the 5 exercise categories (including Daily    Activities 481), UP cycles through the 4 Modes: Outdoor 450/Indoor    452/Upper Body 454/Lower Body 456 (as shown by the middle arrows).

Within each of the 4 Modes, UP cycles through 2 Forces that, takentogether, comprise all unique types of exercise (as listed at450/452/454/456), the significance of which is explained in more depthin FIG. 3F (below). With respect to the forces, for the outdoor mode andindoor modes, the forces are identified as body only forces, andequipped forces (force provided through the use of exercise equipment).For the upper body and lower body, the forces are categorized aspush/pull forces. Within each of the 2 Forces, UP cycles through the 4Tags at the bottom:

-   Frequency 460/Duration 462/Cycle 464/Quantity 466 (as shown by the    bottom arrows), which are selectively created as-needed to qualify    or quantify the item.

Finally, the last Tag—Quantity 466—includes horizontal ground Distance,which the system can optionally provide via GPS tracking if the userdecides to carry his/her mobile computing device 1 equipped with GPScapabilities (e.g., an iphone) along on an outdoorwalk/jog/run/skate/bike trip/etc. Here at the lowest data level, eachdata item associated with each tag is also displayed with RED==>GREENcolor codes to inform him/her as to the relative GREEN positive or REDnegative value of that particular exercise parameter, and the Exerciseas a whole (as discussed at Color-Coded Activities/Exercises above)

FIG. 3F is an illustrative Exercise Database Top 5 Matrix. In thisexample, the user enters up to 5 favorites for each category, startingwith the exercise done most often (e.g., walk). From this juncture on,the user can conveniently select periodic exercise #1, sports #3,weights #5, etc.. This is the same Exercise DB shown as a modular blockdiagram in FIG. 3E, formatted here into a 5×10 Exercise Matrix that isvirtually a 4-dimensional (4D) array of open-ended Lists (except for 3D“To/From Work” 498) with the following 4 independent axes:

-   [1] the 5 Categories corresponding to horizontal Matrix columns    481==>485-   [2] the 10 Modes corresponding to vertical Matrix rows 487==>496,    except that To/From Work (column segment 498) is not indexed to the    10 Modes (col. 480)-   [3] the 50 Open-Ended Lists corresponding to each cell in the 5×10    Matrix array, where each cell initially contains a popular example    to stimulate User choices-   [4] the 4 Tags attached to each of the 50 Open-Ended Lists (200 max    Tags) where:-   Frequency Tags 460 initially contain a popular example like “3 times    per week”-   Duration Tags 462 initially contain popular example like “60 mins    per workout”-   Cycle Tags 464 initially contain a popular example like “3 sets @ 10    reps”-   Quantity Tags 466 initially contain popular examples like “100 lbs”    or “1 mile” that are later modified or updated by the user after    he/she completes a set or a run (or alternatively hits “done” to    stop optional GPS tracking for a walk/jog/run/etc.)

Top 5 Favorite Exercises: UP initially asks the user to enter up to 5Favorites for each Category 481==>485, starting with his/her #1favorite, and optionally entering up to 4 or more favorites per categoryat his/her discretion. At any time from this juncture on, the user canconveniently select any “repeat” favorite by its sequence number amongthe Top 5 Favorite lists—for example: Daily #1==>Periodic #2==>Sports#3==>Conditioning #4==>Weights #5 which saves the user all the time andeffort to re-enter the same Favorite exercise.

This initial system/user interplay over Top 5 Favorites provides anopportunity for UP to find out exactly what the user's attitude towardexercise is, and perhaps explain where all his/her excess weight (ifany) came from—e.g., even if the user doesn't do the favorites veryoften, it is his/her urges that count. The system matches the 60exercise examples shown in the initial matrix of FIG. 3F to the RED1==>5 GREEN quality of exercise the user loves to do. Based on all theabove User ID/User Health inputs (that will normally yield an idealweight and target weight loss goal for the user) coupled with theskeletal user “5/10 years ago” history data, UP can gauge which initial1==>5 level to display. That is, as an illustrative embodiment here, the50 examples shown in FIG. 3F vary through all 5 color levels from RED 1(e.g., walk slow) to 5 GREEN (e.g., sprint competitively). The strategyhere is present most of these 50 examples at the 1==>5 food level he/shecan identify with and/or actively seeks out. Hence, by this strategy, UPis able to elicit a more realistic answer from users than by suggestingthey pick among “better” exercises they know they should be doing.

This initial Create mode strategy dovetails with the higher-orderstrategy of an illustrative implementation of the entire system tofacilitate weight loss (or gain), which can be accomplished moreeffectively when the system knows the exact exercise profile of theuser:

-   at the obese RED extreme, in an illustrative implementation, UP will    present all the customary RED activities that may have contributed    to the user's obesity in the first place, to avoid wasting their    time with GREEN exercises they already ignore, and to otherwise    establish an accurate RED baseline-   at the healthy GREEN extreme, UP will present all the high-caliber    GREEN exercises that fit athletes are already aware of and/or doing    religiously, to avoid wasting time with RED activities they dislike,    and otherwise establish an accurate GREEN baseline.

One such illustrative system strategy is to boot-strap each user fromhis/her current RED==>GREEN level (as just described) up the exerciseladder, one notch at a time, as shown with the Walk/Run Ladder below:

-   This Walk/Run Ladder illustrates the prime system strategy of    boot-strapping a user at any exercise level—e.g., obese    RED==>healthy GREEN—up the ladder one step at a time—from the    slowest RED walk time or ORANGE Walk/Jog time, up the ladder toward    the GREEN fast run time or ultimate BLUE fast sprint time-   This Run/Walk Ladder illustrates how the system can make a user    healthier: i.e., there is a similar 5-color exercise ladder for each    one of the 60 Open-Ended Lists by which the system improves user    exercises, one step along one ladder at a time.

FIG. 4A Food Mode: FIG. 4A shows an illustrative flowchart of anexemplary implementation depicting the steps involved in acquiring foodconsumption data in the system “Food Mode.” Entry into this mode istriggered by the user selecting the Food Mode icon (56) in the modeselection display shown in FIG. 2B1, which in turn triggers the displayof multiple food icons at the beginning of food mode processing (500).In this example, the display food icons processing (500) results in thedisplay of the following illustrative food mode icons: “Favorite Foods”(502), “Restaurant Menu/Diet plan” (504), “User Voice Input” (506), and“Phone Picture Input” (508). The circled nodes “A,” “B,” and “C” in thecenter of FIG. 4A define iterative branch points back to blocks502/544/560, respectively.

Initially, a check is made at block 502 to poll for the user selectinghis/her “favorite foods” icon. As explained above for FIGS. 3A-3C,during the creation of a user profile, the user generates entries in thesystem Food DB that identify his/her favorite meals and/or favoriteindividual foods/snacks/drinks. This enables the system to acquire abaseline snapshot of the user's current eating inclinations andsimplifies the user's future data entries. Each favorite food entry isstored locally (e.g., in memory 15 of the user's mobile computing device1) and, in illustrative implementations, remotely at server 14.

If the check at block 502 reveals that the “favorite foods” icon wasselected, the routine displays the various food categories (510)described above for FIGS. 3B- 3C which, in this example, includebreakfast, lunch, dinner, snacks, and drinks (512). A check is then madeat block 514 to determine whether a food category has been chosen. If acategory has not been chosen, the routine branches back to node A anddisplays the above-identified four icons.

If the check at block 514 reveals a category has been chosen, then theuser food database (516) is accessed to, for example, obtain the user'sfavorite foods for breakfast, assuming the “breakfast” category waschosen. The user's favorite foods for breakfast are then displayedtogether with the frequency of consumption (518). The user may, forexample, select favorite breakfast No. 1, (which may, for example,consist of one cup of Cheerios with whole-grain and ½ cup of skim milk),whereupon the associated tag information is displayed with associatedcolor codes. Such tag information includes nutritional information (suchas 140 calories, 2 grams of total fat, 160 mg of sodium, 1 g of sugar,etc.) that is accessed from Nutrient DB (566), as explained below.

It is noted that, every time the user eats a given food item, that itemis added to the favorites list, together with an indication of thenumber of times such food has been consumed. By tracking the number oftimes an item is eaten, the system is able to rank favorites based onthe user's frequency of eating that food item over time.

In illustrative implementations, the system operates to recommendhealthier foods to a user. In such implementations, by way of exampleonly, after a user has selected a RED food such as “rib roast,” thesystem encourages the user to “step up the ladder” at least one rung byselecting a healthier alternative that is the next highest up the ladderof related foods, such as described in the exemplary Meat Ladder shownabove. This healthier alternative is added to the user's “favorites”list in a highlighted fashion (e.g., displayed higher up the favoriteslist with a higher-level color code indicating a “healthier choice” thanthe RED color-coded rib roast) with a frequency count of “zero”, untilthe user selects the recommended food which raises the count to “one”.However, the presence of the food in the user's favorites list serves toencourage later selection by the user.

Turning back to the flowchart in FIG. 4A, a check is then made at block520 to determine whether the user has chosen a both a food and quantityto be eaten. If the user has not made both selections at block 520 in apredetermined time period, the routine branches back to node A.

If the user has chosen a food and quantity as determined at block 520, acheck is then made at block 522 to determine whether the user hasselected a different add-on than the original favorite (if any). If theuser has not selected a different add-on at block 522, the routinebranches to node C at block 560.

If the user has decided to add a different add-on, such a new oradditional add-on is then specified at 524 so that data can beaccumulated for a new food record. For example, if the user had selecteda meal including ham and eggs with the add-on “honey” on the ham, thecheck at block 522 gives the user an opportunity to select a differentadd-on for the ham and eggs at 524 such as “apple sauce”. In anillustrative embodiment, the system provides an open-ended list ofalternative add-ons for each food selected that is augmented by each newadd-on declared by the user. Alternatively, the user may identify theadd-on by voice input, as described earlier. The user's selection may inan illustrative embodiment be confirmed by a display to the user of theselection made, such as by a textual display of “apple sauce.” In anillustrative implementation, the newly-selected add-on is next attachedto the food item as a tag, as shown in FIG. 3B.

Once an add-on has been specified by the user or, if the user does notinclude a different add-on, the routine branches to block 560 at node C.As indicated at block 560, the chosen foods are displayed as atentatively selected meal, items and add-ons, reflecting the user'sselections (562). The meal referred to in block 562 is an aggregate ofall the items constituting the meal. Furthermore, each item may have itsown separate add-on (e.g., a sauce, dressing, butter, etc.).

In an illustrative implementation, the meal itself, each of the items inthe meal. and each add-on has an associated color code that is displayedto inform the user as to, for example the relative healthiness of eachmeal/item/add-on to be consumed. In addition, in an illustrativeimplementation, a user may request to see the nutrient content of a fooditem/add-on selected, as indicated by the “show nutrient” check at block564. Such a user selection may be prompted by, for example, a RED colorcode associated a selection, as would be the case with a rib roast or anice cream sundae.

If the check at block 564 indicates that the user has chosen to see anitem's nutritional content, the system then accesses the NutrientDatabase (566) which displays all the food nutrients (and theirquantities) associated with the item selected (at its quantity). All ofthis is displayed to the user together with associated color codesindicating the quality of nutritional content (568) via a call “F1” tothe Calculate Calories utility subroutine shown in FIG. 9.

After the nutrient display, a check is made at 570 to determine whetherthe user has chosen to eat the food tentatively selected after reviewingthe nutrient value and color code information displayed at 568. If theuser chooses not to eat the food, the routine returns to the mainline inFIG. 2A (at 572).

If the user chooses to eat the food selected at 570, the user FoodDatabase is updated at 571. If the item is a Favorite Food, the program(573) calls the Calculate Calories subroutine at “F1” (where the food'susage counter is incremented by one) and, upon its return, exits to themainline at 572. If the item is not a Favorite Food, the program createsa new record for each item in the meal (including its associatedquantity, add-on(s), and calories), appends the new record to theFavorite Food DB (with a usage count of zero), and makes the same “F1”call and final exit as above. In this manner, the system is able to sortand display the user's favorite foods according to the frequency he/sheeats those foods.

In other words, any new food item, such as an old meal but with a newadd-on, is added to the favorites list via creation of a newrecord—hence, the system creates a new record for each such item plustags (575). The tags in this example identify the quantity of the fooditem consumed, together with any add-ons and their calories consumed,displayed separately on the same screen. The manner in which the totalcalories are monitored and tallied is discussed below in conjunctionwith FIGS. 7B and 9.

As shown in FIG. 4A, if the check at block 502 reveals that the user hasnot selected “favorite foods,” the next check at block 504 tests whetherthe “restaurant/diet plan” icon has been selected. If so, the routinegenerates a display identifying the restaurants for which digitizedmenus are available (at 526) and/or a list of diet plans for which thesystem has a digitized compilation of acceptable foods contemplated bythe plan (at 528).

The routine then checks at 530 whether a restaurant or diet plan hasbeen chosen. If a restaurant/diet plan has not been chosen, the routinebranches back to node “A” to poll for another mode selection. Forconvenience purposes, only restaurant menus are identified below withoutfurther reference to diet plans. It should be recognized that thedescription below equally applies to the user making selections from adiet plan, as discussed earlier with FIG. 2B2.

If a restaurant has been chosen at block 530, the routine accesses arestaurant database (532) and displays the menu for the selectedrestaurant (534).

A check is then made to determine whether the user has chosen a mealfrom the menu, or an identifiable a la carte item that is not associatedwith a meal from the menu (536). When a meal has been selected, theroutine identifies the various items constituting the meal. In anillustrative implementation, such a meal is displayed with caloricinformation and with nutritional values associated with each of the mealitems—including, e.g., main entrèe, plus side dishes, plus any add-ons,as delineated in FIGS. 3B-3C. The nutritional value of a selected mealis based on the total nutritional value of all the items constitutingthe meal.

If no meal or item is chosen by the user as indicated by the check at536, the system branches back to node “A”. If a meal or item has beenchosen in accordance with the check at 536, then the routine checks at538 whether the user desires to select more items. If so, the routinebranches back to the displayed menu at 534. If no more items have beenselected by the user, a check is made to determine whether additionaladd-ons to an item have been selected (540). If the user has chosen tomodify the meal add-ons, then the user is asked to specify the add-ons(542) as explained previously in conjunction with blocks 522 and 524 inthe “favorite foods” processing described above.

After add-ons have been specified by the user or, if no more add-onswere selected, the routine branches to branch point “C” at block 560 andprocessing continues as explained above in conjunction with the favoritefoods processing at blocks 560 through 575 (including return 572). Itshould be understood that once the user selects a meal, e.g., at arestaurant, the selection made is added to the favorites list in themanner explained above and as indicated at block 575. Thus, theselection and data entry of the identical meal (at a later point intime) is significantly simplified for the user to choose and to enterdue to the ever-expanding nature of the user's open-ended list offavorite foods.

If the user selects the “user voice” icon (506), the routine prompts theuser to identify the food item to be consumed and the food quantity(544). The prompt may be verbal or displayed on the mobile computingdevice's display screen. The user may, for example, respond “chickenbreast, 4 ounces.” Upon the user articulating the food to be consumed,the routine analyzes and decodes the user's voice response (545). Theroutine then displays the identified food and the food quantity for userverification on, for example, the LCD display of the mobile computingdevice shown in FIG. 1 (547).

After the food and its quantity are displayed, the routine checkswhether the user has confirmed that the system identified the food andquantity correctly (at 546). If the user indicates that the correct foodwas not displayed, the routine analyzes a 2nd and 3rd attempt to displaythe correct food and quantity. If the correct food is still notidentified on the 3rd try (at 548), the user is prompted to type in thecorrect food and quantity (at 550). Prior to the 3rd try, if the correctfood has not been identified, the routine branches back to node B and,once again, prompts the user to identify the food and quantity thereofat 544.

After the user types in the correct food, the system displays the foodselected and its quantity at 552, where, in an illustrativeimplementation, the system also displays, for example, two foods thatare equivalent in nutritional value to that chosen by the user. The twoequivalent foods presented to the user are accessible from the Top Foodsrelational database schematically depicted in FIG. 2F. Thus, through arelational database implementation of the Top Foods database, a user'sselection of walnuts may lead to an equivalent recommendation of almondsand pistachios. Moreover, in illustrative implementations, instead ofpresenting two foods that are merely equivalent to the user's selectedfood, the system may present foods that are related to the selectedfood, but even more highly nutritional, based on the needs of theindividual user.

A check is then made at block 554 to determine whether the displayedfood is the correct food. If so, the routine proceeds to display thechosen food at block 560 and processing continues in blocks 560 through575 (including 572) in the manner described above. If the food is stillnot determined to be correct as a result of the check at block 554 anunknown food flag is set (at 556) and the routine returns (at 558) tothe main routine in FIG. 2A.

As shown at block 508 in FIG. 4A, the system checks whether the user isentering food data via the camera on the smart phone or other personalcomputing device. A user may choose the camera-based food data entrymode under circumstances, for example, where packaged foods are usedcontaining a barcode that, e.g., identifies the meal contained in thepackage and a wide range of nutritional information as described herein.In illustrative implementations, packaged meals may be generatedtogether with barcodes that are tailored to the goals described in thesubject specification.

If the phone picture icon 508 is selected, a check is then made todetermine whether the user has chosen a packaged meal having a barcode(574). If so, the barcode is decoded and a Barcode Database (576) isaccessed to find the food and its quantity (578). The food is thendisplayed at block 547 and processing continues as explained above,beginning at block 546 through 575 (including 572). In an alternativeimplementation, instead of using a Barcode Database 576, the system mayutilize, for example, prepackaged lunches and dinners, each of which isidentified with a barcode that may be a two-dimensional barcode such asa QR code. A QR code may be used to store and/or otherwise identify boththe food consumed, portion size, and nutritional information includingcalories, fat, sugar content, and any other quantity the user, aphysician or nutritionist desires to monitor.

If the check at block 574 indicates that a barcode package is notinvolved, the routine branches to a check at block 580 to determinewhether the correct food has been identified. In this mode of operation,the user's mobile computing device camera is utilized to take a pictureof a meal item or items. The digital image taken is used to determinethe food and quantity based on an analysis of the picture taken. In anillustrative implementation, the image processing may be utilized inconjunction with specially designed plates of a known diameter having,for example, concave portions or built-in containers of a predeterminedsize that provide a known portion size of a meat, vegetable, and/orother food.

The image analysis reveals certain food identifying characteristicfeatures of the food (582) and accesses a Food Feature Database (584)that correlates a given food with a set of food features. Such featuresinclude characteristics of the outer surface of the food and may includeinterior cross-section features of the food. With respect to the foodouter surface, the routine looks for matches in the database withrespect to food shape, surface textures, striations and food colors, andthen matches such data to stored data relating to characteristics ofvarious foods. Thus, the combination of various surface textures,striations, color and shape obtained from the digital image analysis isused to identify a particular food item. For example, a precookedhamburger or hot dog may be identified and indexed in the database basedupon a combination of their visual characteristics of: 1) anidentifiable round shape, 2) a predetermined surface texture, and 3)typical range of colors. Food quantity assessments (in ounces) are basedon various visual characteristics (586) such as size and shape. Basedupon such pattern matching data, the routine displays the best match forfood and food quantity after considering, for example, the best 2 or 3matches in the database (588). In an illustrative implementation, boththe best match and the next best match for the digital food image may bedisplayed and the user may select the correct match, via, for example, atouchscreen selection.

A check is then made at block 590 to determine whether the displayedmatch with the mobile computing device's camera generated digital imagefor food and quantity identified the correct food and quantity. If thecorrect food is identified processing continues at block 560 asexplained above, until the routine returns to the mainline routine atblock 572.

If the correct food was not identified, the routine cycles back throughblocks 580 and 582 and again accesses the Feature Database (584) todisplay the next best match for the photo once again checking forwhether the correct food was displayed (590). If, after the third try(580), a correct match has not been found, the routine branches to nodeB and prompts the user to verbally identify the food and quantity (544).The previously described processing cycle then continues which, asdescribed above, may ultimately prompt the user to type in the food andquantity (550). Processing continues as described above until theroutine returns at block 572 to the mainline routine of FIG. 2A.

FIGS. 4B1 and 4B2 identify and illustrate the contents of thepublically-available USDA Nutrient Database that may be utilized inwhole or in part to implement the system Nutrient Database 566 in FIG.4A. In an illustrative implementation, the nutrient values illustratedin FIGS. 2D are accessible via the publicly-available National NutrientDatabase, maintained by the Nutrient Data Laboratory of the USDA(Release 25, Sep. 2012), or a subset thereof

FIGS. 4B1 and 4B2 show for each identified nutrient number, the nutrientname and the number of foods in the database that contain it—e.g., fornutrient number 208, the USDA database provides the number of calories(energy) contained in 8,194 foods.

The USDA DB identified in FIGS. 4B1 and 4B2 includes nutrients that aregenerally self-explanatory, including most of the Macronutrients andMicronutrients delineated in FIGS. 2D1 and 2D2, respectively—however,for clarity, the common name/mnemonic for several nutrients has beenadded. It is also noted that the USDA DB includes total lipid (fat)information @ nutrient #204 (found in all 8,194 foods) and that, forclarity here, this “fat” category is later broken down into itsconstituent “Fatty Acid” subcategories, as follows:

-   Saturated Fatty Acids (SFAs) @ #606, then non-sequentially through    #654-   Mono-Unsaturated Fatty Acids (MUFAs) @ #645, then sporadically    through #859-   Poly-Unsaturated Fatty Acids (PUFAs) @ #646, then sporadically    through #858-   Trans Fatty Acids (TFAs) @ #605, plus #693 and #695

FIG. 4C includes an illustrative side-by-side comparison of thenutritional content for foods that are unhealthy choices (centercolumns) versus foods that are healthy choices (right-hand columns). Inthe example shown in FIG. 4C, the nutrient, mineral, and vitamin contentin “Seasoned Fries” from T.G.I. Friday's and a “Big Mac” from McDonald'sis compared with Sockeye Salmon and Turkey Breast. Looking at theboldface highlights, the unhealthy food is rated “Red” for manynutrients (center columns) and the foods that are highly nutritious arerated “Green” for many more nutrients (RH columns). Hence, FIG. 4Cillustrates how the illustrative implementations described herein andtheir associated color codes help a user recognize exactly why salmonand turkey are healthier choices, based on their superior levels ofnutrients, minerals, vitamins, and essential amino acids, e.g.:

-   WRT protein, the Sockeye Salmon/Turkey Breast provide 56 g/67 g,    whereas the Seasoned Fries/Big Mac respectively provide only 9 g/26    g of protein-   WRT fats, the Sockeye Salmon/Turkey Breast are limited to 15 g/5 g,    whereas the Seasoned Fries/Big Mac respectively provide 34 g/33 g of    fat-   Far worse, WRT saturated fats, the Salmon/Turkey are limited to 2    g/1.3 g, whereas Seasoned Fries/Big Mac provide 6 g/14 g, which is    the bane of the American diet-   Again worse, WRT sodium, the Salmon/Turkey have radically lower    295/219 mg, whereas Seasoned Fries/Big Mac have 842/1007 mg, another    bane of today's diet-   As for hard-to-find Selenium (that is vital to activating Vitamin E    as a catalyst), the Salmon/Turkey have 81/67 micrograms, in stark    contrast to the negligible selenium found in Seasoned Fries/Big Mac,    which have only 9/0 micrograms

Additionally, FIG. 4C shows that Sockeye Salmon and Turkey Breastprovide 18%-83% more than the recommended daily allowance (RDA) of thenine essential Amino Acids for an exemplary 220-pound man. Smallerindividuals would require proportionately less of these 9 essentialAmino Acids to meet and exceed their RDA provided by the very healthysockeye salmon and turkey breast (e.g., half as much—110 grams—for a110-pound woman).

FIG. 5A Exercise Mode: FIG. 5A is an illustrative flowchart delineatingthe sequence of operations involved in the “Exercise Mode.” Entry intothis mode is triggered by the user selecting the Exercise Mode icon (62)in the mode selection display shown in FIG. 2B1, Upon entry into theExercise Mode in this illustrative implementation, the routine displaysthe following four icons: “Favorite Exercises,” “Activities,” “Sports,”and “Conditioning.” The user has the option of selecting any one ofthese four exercise modes.

The routine initially checks whether the user has selected the FavoriteExercises mode (at 600). If the check at 600 indicates it was selected,the routine displays the favorite exercises categories of daily,periodic, sports, conditioning, and weights (602) as previouslydescribed, for example, in conjunction with FIG. 3D. The routine nextchecks at 604 whether any of these categories was chosen by the user. Ifnot, the routine branches back to node A to determine whether the userhas selected an exercise mode other than favorites.

If the user has chosen favorites, the routine accesses the ExerciseDatabase as illustrated in FIG. 3F (at 606) to display each of theuser's favorite exercises from the chosen category, together withassociated tags of, for example, frequency, duration, cycle, quantity,calories burned, and the associated color code as shown in part in FIG.3E (at 608). The calories burned are calculated at 616 using theapproach described below that calculates calories at 618 using, forexample, the Calorie Coefficient Database shown in FIG. 5B.

The illustrative implementations contemplate a wide range of tags thatare associated with various exercises, as shown for example in FIG. 3D.The exercise frequency tag defines frequency as times per workout ortimes per week. The exercise duration tag tracks the time of exercisingin hours, minutes, and even down to seconds where necessary (e.g., forsprints and other quick-burst track events). The exercise cycle tagkeeps track of repetitions and sets for quick-burst events. The exercisequantity tag tracks pounds in weightlifting exercise and distance in awalking, running, biking or swimming context. The associated “caloriesburned” tag is ultimately calculated for every chosen exercise of ameasurable duration and quantity (e.g., time and distance and/or setsand pounds).

The routine next checks at 610 whether the user has selected a favoriteexercise together with its associated tags. If an exercise plus tags hasnot been selected, then the user has decided to exit out of the favoriteexercises mode and the routine branches back to node A. If the user hasselected an exercise as indicated by the check at block 610, then theroutine checks at 612 whether the user has elected to modify the tagsassociated with the exercise. For example, the user may have decided tomodify the frequency, duration, cycle, or quantity associated with theselected exercise. A user may increase, for example, the reps for abench press from 6 to 10 reps, or the weight from 100 to 150 pounds,thereby indicating a change in the “cycles” or “quantity” tag shown inFIG. 3E; or the user may increase the time for a run from 1 to 2 hours,or the frequency from 2 to 3 times a week, which similarly changes the“duration” or “frequency” tag.

If the check at block 612 indicates the user decided to modify one ormore of the tag parameters associated with the exercise, the user mustnext specify the new tags (at 614). If a different tag has not beenentered, as indicated by the check at 612, the old exercise recordremains unchanged and the routine branches to node C to display theoriginal favorite exercise, tags and calories that will be burned uponcompletion of the exercise. Since no new tag has been selected, theoriginally-calculated calories burned and the original color code stillapply to the user's chosen favorite exercise. Otherwise, if a new taghas been specified at 614, the routine proceeds to calculate caloriesburned (at 616). The calories burned is calculated by multiplying theuser's body weight by a calorie coefficient for a given activity (at618) as is described in detail below.

FIGS. 5B1 and 5B2 delineate an illustrative portion of an activitydatabase based on calories per user activity for an exemplary user. Thedatabase was excerpted from the government-funded database published inthe latest “Compendium of Physical Activities” by Ainsworth et al.(2011), as updated by Arizona State University in August 2012, which ishereby incorporated herein by reference. As shown in the databaseexcerpts in FIGS. 5B1 and 5B2, the database provides an associatedcalorie coefficient for the exemplary user for a 30-minute timeframeacross a wide range of activities. The calories burned during theidentified activities are calculated by multiplying the user's bodyweight times the identified calorie coefficient.

The illustrative database shown provides calorie burned data for anexemplary user identified in FIG. 5B1 as a healthy, large-frame 6′3″American male, age 25 who weighs 200 pounds. As set forth at the top ofFIG. 5B1, the data shown for an exemplary 200-lb 6′3″ male may bemodulated by the identified percentages (e.g., per pound, per inch, peryear, etc.) to embrace a wider range of users depending upon the user'sweight, height, age, and gender. Using these and similarly-patternedclusters of percentages for other weight ranges centered, for example,at 80/110/150/250/300 pounds, a stepwise-linear Activities Database hasbeen developed for a comprehensive range of users from the “Compendiumof Physical Activities” (cited above), as will be appreciated by thoseskilled in the art.

As shown in FIGS. 5B1 and 5B2, activities are characterized by variousparameters that further qualify the activity by specifying, for example,resistance, speed, or load level associated with the activity. Examplesof qualifiers for an activity of carrying a load upstairs includecarrying a load of 1 to 15 pounds upstairs, carrying 16 to 24 poundsupstairs, etc. For the activity of bicycling, illustrative qualifiersare leisure cycling speeds of 5.5 mph and 9.4 mph. Similarly, qualifiersfor jogging, running, walking include a range of different speeds inmiles per hour which reveal a non-linear increase in calories burned asspeed is increased. In this illustrative DB excerpt, various universallypopular categories of activities are walking, running swimming, biking,gym, and sports

The database shown in FIGS. 5B1 and 5B2 may be used to encourage usersto step up from a minimally strenuous exercise such as walking at 2 mphto burning more calories by walking at 2.5 mph, and then 5 mph. Similarto nudging a user to step up a “Meat Ladder” from rib roast to lightturkey meat (as described above) to eat additional more nutritious foodwith less calories, a user may be encouraged here to step up an“Exercise Ladder” by advancing through stages of walking faster from 2to 2.5 mph, then running at 4 mph, at 6 mph, up to 7 mph, to get moreaerobic exercise and burn more calories.

In illustrative implementations when a user changes an exercise tag suchas those shown in FIG. 3E, the number of calories burned during exerciselikewise changes. Such is evident from the calorie coefficient databaseshown in FIG. 5B1 by observing the difference in the caloriecoefficients (per ½ hour) between carrying a 1 to 15 pound load upstairsto carrying a 25 to 49 pound load. Since the calories burned equals thebody weight times the calorie coefficient, the calories burned (per ½hour) for a 200-pound male is 219 calories carrying a 1 to 15 pound loadupstairs versus 350 calories carrying a 25 to 49 pound load upstairs.

Turning back to FIG. 5A, when an exercise tag changes, the calculatedcalories burned will likely change and a new trial record must becreated (at 618) for potential storage in the Exercise Database, as willbe explained in more detail below in conjunction with blocks 682, 684,and 686.

Thereafter, the system displays the chosen exercise together with allthe associated tags as described above (at 620) including the caloriesburned for the given exercise activity (at 622) via call “E1” to theCalculate Calories utility subroutine (shown in FIG. 9). The caloriesburned values for a given exercise activity must be tallied to definethe user's total calories burned during all exercise activities duringany given timeframe chosen to be monitored, e.g., daily, aggregated toweekly, next aggregated to monthly, etc.

The routine then checks at 680 whether the user has actually completedthe exercise or is merely contemplating performing it. If the user doesnot perform the chosen exercise, the routine returns to the mainlineroutine in FIG. 2A (at 688). If the user performs the chosen exercise asindicated by the check at block 680, the Exercise Database is updated(at 682), in a manner described further below, by updating the favorites(at 684), creating a new record for each item plus associated tags andcalories (at 686) by calling the Calculate Calories utility subroutineat FIG. 9 (which also increments the record's usage counter) via the“E2” call following block 684. Thus, if a previously-stored favoriteexercise is modified by, for example, increasing the pounds utilizedduring weightlifting, a new record is created in the user's Exercise DBto reflect the change in the tag quantity, which in turn results in amodified “calories burned” output. Any new exercise performed by theuser in any of the exercise modes triggers appending the trial recorddiscussed above to the user's open-ended list of favorite exercises toenable fewer user data entry operations.

If the favorite exercises icon was not selected at block 600, theroutine checks whether the “Activities” mode (624) was selected forentry of activities that occur on a daily basis (626) or on an as-neededperiodic basis (628).

In an illustrative implementation, if the Activities exercise mode isselected at block 624, under a “Daily” heading, two daily icons aredisplayed: To/From Travel (630) and Job/School (634). Additionally,under a “Periodic” heading, two periodic icons are displayed: Indoor(638) and Outdoor (644).

If the “Daily” To/From Travel icon is selected, a user will have achoice of selecting a range of travel options including, for example,train, car, bike and walk. Thus, in this fashion, a user receives creditfor calories burned, for example, while bicycling or walking to work asa daily activity. In an illustrative implementation, the user isinformed not to redundantly enter walking or bicycling to and from workas both a daily activity and, for example, a conditioning exercise so asto duplicate the calories burned totals entered into the system.Alternatively, while the system registers that travel to and from workor school is done by car, only a minimal amount of calories burned isattributed to such minimal activity.

Additionally, in the example shown in FIG. 5A, if the daily Job orSchool icon is selected, such common activities as sitting, standing,lifting, carrying, etc. are displayed to the user (636). Thus, in thisfashion, users with physically strenuous jobs requiring extensivelifting and/or carrying, such as FedEx delivery, trash pickup, homebuilding, brick laying, etc., will be awarded full credit for theireffort. Even users who stand at their job all day will get more creditthan the minimal credit for those who, for example, sit at their desk.

Similarly, with respect to “Periodic” activities, if the indoor icon(638) is selected, the routine displays an array of periodic homeactivities such as, for example, scrub/mop floors, vacuum rugs, and washdishes. If a user selects periodic home outdoor activities, an array ofperiodic home outdoor activities (644) are displayed including, forexample, mow/rake grass, wash/wax car, mulch/weed garden (646). Althoughsuch common activities are often dismissed as mundane, users here willget full faith and credit for their extra diligence.

If any one of the icons 630, 634, 638, and 644 are selected and the userchooses an activity displayed as a result of selecting a given icon, theuser then enters tags associated with the activity, as described above,defining the time per day, for example, to the nearest half hour (648).After the tags have been entered, the routine proceeds to node B atblock 616 to calculate the calories burned and completes the processingdescribed above with respect to blocks 616 through 622 and 680 through688.

If the user did not select the Activities icon (624), the routine nextchecks whether the user has selected the “Sports” icon (650). If so, theroutine displays a Recreational Sports icon (652), a CompetitiveIndividual Sports icon (654), and an Organized Team Sports icon (656).

If the user selects the Recreational Sports icon (652), an array ofrecreational sports options is displayed to the user (658). For example,the user may select ping-pong, golf, badminton, pool, water skiing, snowskiing, etc. If the user selected Competitive Individual Sports icon(654), an array of competitive individual sports icons are displayedincluding for example run, bike, swim, tennis, martial arts, gymnastics,track & field, etc. (660). If the Organized Team Sports icon (656) isselected, an array of organized team sports is displayed to the user(662). For example, as shown in block 662, the user may selectbasketball, baseball, football, soccer, hockey, field hockey, etc. Ifthe user has selected any of the sports activities shown in theopen-ended lists represented in block 658, 660, or 662, depending uponthe sports activity chosen, the user may add a wide variety ofqualifying tag information tailored to the individual activities (664).For example, as indicated by the illustrative list below, a user mayspecify racks (pool), rounds or holes played (golf), miles run/elapsedtime, games/sets/time (tennis), events (gymnastics), quarters/time ofplay (football), team position (e.g., running back, QB, pitcher,goalie), etc. Additionally, in an illustrative implementation, sincecalories burned are modulated on user performance levels, the routineasks the user to declare his/her involvement at one of the followingperformance levels: training, recreational, middle school, high school,college, sports club, semi-professional, professional, etc. After a tagentry by the user (664), the routine proceeds to calculate calories forthe given activity at block 616 and to complete the processing at blocks616 through 622 and 680 through 688.

If the Sports icon was not selected as indicated by the check at block650, the routine next checks whether the user has selected theConditioning icon (666). If it was not selected, the routine branchesback to node A at block 600.

If the Conditioning icon was selected, icons for “Noncompetitive”Conditioning (664), “Machine” Conditioning (666) and “Weight”Conditioning (668) are displayed. If the user selects the NoncompetitiveConditioning icon (664), a wide array of noncompetitive activities aredisplayed for user selection. For example, the user is presented with anarray of open-ended lists of such exercises, including walk, run, swim,bike, hike, climb, dance, karate forms, Yoga, Pilates, Tai Chi, etc. (at670)—plus shadow boxing, skip rope, push-ups, pull-ups, sit-ups, kneebends, jumping jacks, alternating-leg lunges, etc. (also at 670) whichare vital to properly warmup before any athletic exercise, especiallyweightlifting.

With respect to linear-motion activities such as walking, running,biking, hiking, and even swimming (with proper waterproofing), the usermay initiate a GPS-based exercise mode (64) shown in FIG. 2B, where, forexample, the distance traveled can be automatically tracked by the user.As indicated above, the GPS subsystem of a computing device (e.g., aniPhone) is utilized to track distance and to provide the exercise“quantity” tag. If GPS is utilized, the system acquires and stores userposition coordinate information based on GPS data input to GPS receiver5 via GPS antenna 7 shown in FIG. 1. In illustrative embodiments, mobilecomputing device 1 may be equipped with a pedometer 13 to provide aninput relating to the number of steps taken by user. In addition totracking the number of steps taken by a user over time, the pedometerinput may be utilized by the system to provide an additional indicationof calories burned and distance traveled as, for example, an independentbackup check on distance traveled that was calculated from the GPS data.Furthermore, the pedometer input may be used to credit the user withexercise, for example, from running in place, running up/down steps,using a stair stepper machine, or other relatively stationary exercisewhere the user is not traversing a typical linear path. Moreover, thesteps the user takes over a given time period in this fashion mayindependently be used to calculate the calories he/she burned duringexercise.

In an illustrative implementation, after acquiring user position and/orpedometer data, the routine displays the user position together withprogress data on the user's screen display. The progress data may, forexample, include a wide range of data regarding the run including thedistance traveled in real time, the pace of the activity, whether thepace is faster or slower than the average pace during the past week'sexercise session, etc. In various implementations, the user (or asimulated “avatar” of the user) may be visually depicted traversing thepath defined by the GPS data while engaged in the walking, running, orbicycling activity. In this fashion, a user may view his or her positionin real-time during, for example, a walk, run, or bicycling exerciseroutine through the city or suburban path chosen by the user, while, forexample, listening to selected music, audio books or other entertainmentor educational media. In certain embodiments, the pace of the user maybe monitored and a simulated “personal trainer” may prompt the user to,for example, adjust the pace (up or down) as appropriate based upon ageand health-related criteria. In an illustrative implementation, the useris prompted to provide a walk, run, or bicycling activity start signalto, for example, indicate that the current exercise is a walk, run, orbicycling exercise session and to signal that the exercise session hascommenced.

Additionally, in an illustrative implementation, with respect to, forexample, non-competitive activities, the system determines a wide rangeof parameters regarding the activity including various pace-relatedparameters, the distance traveled since the beginning of the exerciseand the length of time of the exercise. In an illustrativeimplementation feedback is provided to the user to, for example,indicate that the 30-minute run was faster than his/her last run, or thefastest run of the week based upon stored historical exercise data. Inaddition, in an illustrative implementation, information regarding thespeed of the run and the calories burned during the run are displayed tothe user. In certain illustrative embodiments, assuming the exercisetook place after lunch, the system may, for example, display to the userthe amount of calories that may be consumed at dinner to meet currentgoals, based upon the calories consumed at breakfast and lunch minus thecalories burned during the exercise, as is conveniently tracked via therunning display counter of cumulative “User Cals Today” shown in FIG.10.

If the user has selected the Machine Conditioning icon (666), an arrayof exercise machines are displayed to the user that may be selected(672). For example, the system provides the user with the ability toselect treadmill, cross-country ski, stationary bike, stair stepper,elliptical, rowing machine, etc. In an illustrative implementation, ifthe system does not already have stored information regarding themachine being utilized, in an illustrative implementation, a user promptis generated for the user to input the specific brand of exerciseequipment being used. Additionally, if the machine generates an array ofworkout information, the routine may capture data from identifiedequipment by, for example, prompting the user to verbally indicate thedata output from the equipment such as the amount of calories burned,the distance traveled, the level of difficulty or resistance, and othersignificant data relevant to defining and/or delimiting themachine-guided exercise. In certain illustrative implementations, theuser may capture a displayed array of output data using the computingdevice's camera. Many machines provide a display of identified data suchas calories burned, miles traveled, etc., that may be captured via acamera, via verbal user input, or via a wireless communication link withcompatible exercise equipment that has been expressly designed totransmit data to, for example, smart phones.

If the user selected the Weight Conditioning icon (668), an array ofweightlifting exercises are displayed to the user that may be selected(677). For example, as shown in block 677:

-   with respect to upper body weightlift exercises, the user can    select, inter alia: bench press, overhead press, incline press,    dumbbell press, tricep press, tricep pressdowns, bicep curls, wrist    curls, standing cable pulls, seated rowing, etc.-   With respect to lower body weightlift exercises, the user can    select, inter alia: squats, weighted lunges, leg curls, leg    extensions, weighted back extensions, calf press, seated leg press,    incline leg press, vertical leg press, etc.-   As with the other exercise categories above, there is an open-ended    list of weightlift exercises dedicated to each motion of the torso    and each limb (forward/back, up/down, and CW/CCW rotation as    appropriate),-   This includes exercises for both limbs (arms/hands, legs/feet)    working together and independently isolated, which can be adapted to    the user's unique needs (e.g., a weak limb or one with limited range    of motion, as declared by the user)-   This also includes sequentially-paired exercises for opposing muscle    groups (e.g., chest/upper back, stomach/lower back, biceps/triceps,    quads/hamstrings, thigh subduction/abduction, forward/reverse wrist    rolls, etc)

For most weightlifting exercises, there are four parallel options thateach have their advantages and disadvantages, which include:

-   Free Weight Barbells: working with a barbell provides a real    two-hand (or two-leg) challenge that quickly reveals any weakness in    one limb or the other—hence, a lifter gets the best advantage out of    maintaining RH/LH equilibrium—however, at higher weights,    presses/squats require a spotter for safety reasons-   Free Weight Dumbbells: working with one or two dumbbells provides    the best mechanism to strengthen the inevitable weaker RH or LH    arm/shoulder/hand—however, they only benefit the arms and can still    harm a user at higher weights-   Weightlifting Machines: working with machines provides the most    convenient way to emulate most free weight lifts but without the    instability or the spotter—however, it is much more difficult to    isolate/strengthen a weaker limb, and without the pressure of    maintaining weight equilibrium, the torso gets left out-   Isolated versus Combined Lifts: since two hands are always better    than one, most users can lift a barbell with much more than twice    what either arm or leg can lift separately with dumbbells or    machines, mostly because the torso helps—however, over time,    isolated lifts strengthen the weak side of a combined lift so that    both lifts are essential to optimizing overall strength of the    entire body-   Therefore, for any given weight exercise, the system offers all 4    options above, side-by-side on the user screen, wherever practical    and/or possible, taking into account a 20% differential from free    weight levels up to higher machine levels, using back-to-back    opposing-muscle lifts to optimize available blood flow, and the    user's unique needs (e.g., a weak limb and/or with limited range of    motion)

After the selection of the non-competitive, machines, or weightliftingconditioning exercise, the user enters any of a wide array of tags(678). Such tags may include distance, time, sets, repetitions, etc.,depending upon the activity selected. As explained above, the distanceinformation and time information may be provided by the system whenoperating with the use of the computing device's GPS subsystem.Additionally, resistance levels may be entered with respect to thevarious machines identified. Further, with respect to weightlifting, theuser may, for example, enter pounds, pulse rate, and rest intervalinformation.

After the tags have been entered (678), the routine proceeds to node Bat block 616 to calculate the calories burned and completes theprocessing as described above with respect to blocks 616 through 622 and680 through 688.

Food and Exercise Recommendations—Stepping Up the Ladder

In certain illustrative implementations, it is contemplated that thesystem described herein will play an active role in encouraging users toeat and exercise in a healthier fashion than they have done in the past.With respect to both healthy food intake and optimum exercise routines,many individuals benefit from a highly structured system in which someof the individual's food and exercise choices are selected for them. Itis contemplated that certain illustrative implementations willadvantageously utilize food and exercise ladders of the type describedherein to encourage users to “step up the ladder” so that they can findout for themselves the joy of eating and exercising in a healthierfashion over time. For example, the Meat Ladder shown above illustrateshow the system can make a user healthier by way of better nutrition:

This Meat Ladder chart illustrates an illustrative system strategy ofboot-strapping the user at any diet level—e.g., obese RED==>healthyGREEN—up the ladder, one step at a time—from the fattening RED rib roastor ORANGE sirloin steak, up the ladder toward the ultimate GREEN lightchicken or BLUE light turkey. Moreover, in illustrative implementations,there is a similar 5-color food ladder for each one of the 60 Open-EndedLists by which the system can improve a user's diet, one step along oneladder at a time.

Similarly, the exercise ladder shown above illustrates how the systemcan make a user healthier by encouraging better exercise or at leastsome exercise:

This Walk/Run Ladder illustrates the system strategy of boot-strapping auser at any exercise level—e.g., obese RED==>healthy GREEN—up the ladderone step at a time—from the slowest RED walk time or ORANGE Walk/Jogtime, up the ladder toward the GREEN fast run time or ultimate BLUE fastsprint time. This Run/Walk Ladder illustrates how the system can make auser healthier. In an illustrative implementation, there is a similar5-color exercise ladder for each one of the 60 Open-Ended Lists by whichthe system improves user exercises, one step along one ladder at a time.

Regarding food intake, in an illustrative implementation, the systemprovides the user with a scheduled diet to consume for a prescribed timeperiod. In an illustrative implementation, the user is provided with(e.g., by display or email) a “Grocery List” of foods to be obtained atthe market, for example, for consumption during the following one weekor two week time span. The grocery list is based on a projection offoods needed to create 3 meals, snacks and drinks for each day based onthe user profile information including the user's favorites list and theuser's selected diet plan with caloric intake projected over time.

As indicated above, in an illustrative implementation, the systemoperates to recommend healthier foods to a user as follows. After a userhas selected a food such as “rib roast,” the system encourages the userto “step up the ladder” by selecting a healthier alternative that isnext highest up the ladder of related foods such as described in themeat ladder above. In this implementation, the healthier alternative isadded to the users “favorites” list in a highlighted fashion ((e.g.,displayed higher up the favorites list based upon a displayed color codeindicating a “healthier choice” than the red colored rib roast) with afrequency count of zero indicating that the user has not selected thefood at this particular point in time.

In illustrative implementations, the grocery list for the next two weeksis based at least in part on healthier entries added to the user'sfavorites list to encourage the user to step up the ladder. Thus, thelist of foods to purchase for the next week would be based on what wasconsumed the previous week but also factors in the step ladder by addingfoods to purchase for the next week including some foods on the nextrung up the ladder. Since many people do better during dieting when someof their choices are made for them, the system prepares a daily dietmenu that the user can follow and creates a “Grocery List” so that theuser will know what foods and amounts to obtain such that the dailymenus can be followed. In such an approach, planned visits torestaurants may be factored into the foods needed calculations for thenext two weeks.

These healthier entries may be automatically added to the grocery listbased upon any of a variety of reasonable approaches. For example, thegenerated grocery list may be based in large part on the favorite mealsrecently consumed by the user as indicated by the Food Database 571(FIG. 4), and be based in part on replacing a small percentage of theuser's favorite choices with healthier alternatives as indicated by therelevant food ladder. In one certain implementation, if, for example,the user has had difficulty achieving weight loss goals, the nextgenerated “grocery list” should include an increasingly larger number ofhealthier alternative selections that are chosen to aid progress towardsgoal attainment.

In certain illustrative implementations, a similar approach is alsoapplied to exercise by having the system generate an “exerciseprescription” for the user. In such an implementation, the systemprojects, for example, a two week user's exercise plan by identifyingthe exercise activities that the user should be trying to do over afuture period of time. Such a projection would be based upon the user'scurrent exercise favorites (e.g., compared to his/her original Top 5)and on the caloric expenditure requirements determined by the systembased on the user's profile and goal data.

In such an implementation, the system generates a plan that the usersees over time (e.g., by display or email). A chart may be generatedthat defines the recommended exercise plan for a projected 2-week month,or 6-month period, as illustrated for an exemplary overweight Americanmale in FIG. 7A.

As indicated above, the database described in conjunction with FIGS. 5Band 5C may be utilized to generate the exercise prescription toencourage users to step up from a minimally strenuous exercise such aswalking at 2 mph to burning more calories by walking at 2.5 mph, andthen 5 mph. Similar to the desirability of a user progressing through ameat ladder from rib roast to light turkey to eat more nutritionallywith less calories as described above, a user may be encouraged to stepup the “exercise ladder” by progressing through walking faster from 2 to2.5 mph to running at 4 mph and then 5 mph, or even 6 mph.

As with the food entries, the healthier exercises may be automaticallyadded to the exercise prescription based upon any of a variety ofreasonable approaches. For example, the generated prescription may bebased in large part on the favorite exercises recently performed by theuser as indicated by the Exercise Database 682 (FIG. 5A), and be basedin part on replacing a small percentage of the user's favorite choiceswith healthier alternatives as indicated by the relevant exerciseladder. In one implementation, if, for example, the user has haddifficulty achieving weight loss goals, the next generated “exerciseprescription” should include an increasingly larger number of healthieralternative selections in light of the user's profile that are chosen toaid progress towards goal attainment.

In this fashion, the user may plan for exercise by knowing that he/shewould need to set time aside, for example, four, 30 minute periods onthe elliptical this week and four, 40 minute periods next week. Such an“exercise prescription” generated in light of one or more exerciseladders will change dynamically based on how well the user did duringthe previous timeframe.

FIG. 6A is a flowchart delineating the sequence of operations performedin an illustrative implementation during the “Food Purchase” mode thatmay, for example, be utilized in a grocery store or restaurantenvironment. While the flowchart depicted in FIG. 6A is tailored toapplications in a grocery store context, modifications for use inrestaurant ordering of foods will be apparent to those skilled in theart particularly in light of the description below. As applied in agrocery store context, upon entry into the Food Purchase mode (83) inresponse to a user selecting the Food Purchase mode icon 60 shown inFIG. 3, the system prompts the user to input food product information.The user may, for example, verbally indicate that “Honey Nut Cheerios”has been selected for purchase (84). In a restaurant context, a userwill be prompted to identify the name and location of the restaurant andidentify the entree selected.

The routine then, using speech recognition software 8, decodes the inputproduct information and accesses the server 14 database to acquirenutritional information regarding the product and any closely-relatedproducts (85). Similarly, in a restaurant context, in one illustrativeimplementation, the server 14 database stores menus and nutritionalinformation data regarding selections from the menu in the usersgeographical area as determined by the mobile computing units GPSsubsystem. The server 14 then accesses nutritional information regardingthe user's selected entree and entrèes that are in the same family offood selected by the user. In one illustrative example, if the userselects a fish entrèe, the system will access and display all availablenutritional information regarding the selected entrèe and all other fishalternatives on that menu, together with their associated color codes,to inform the user of his/her immediate options to eat the worstRED1==>5 best GREEN choices (if any are available).

As indicated at block 86, a check is then made to determine whether theproduct selected is acceptable in light of the user's profile. In thepresent example, if the user's profile indicates that the user is adiabetic, the system proceeds to identify a more appropriate product ofthe same product type (87). Thus, using the example of a request forHoney Nut Cheerios, the database in server 14 is accessed and theroutine determines that at least two alternative products may be betteralternatives since Honey Nut Cheerios has 9 g of sugar, whereas theoriginal Cheerios has 1 g of sugar and Multi-grain Cheerios has 6 g ofsugar. For a diabetic, the routine may only identify original Cheeriosas an alternative. For a user without sugar-related problems, in thisillustrative example, the routine would nevertheless display theoriginal Cheerios and multigrain Cheerios as alternatives of the sameproduct type. In addition, in certain implementations, basic nutritionalinformation for each alternative may be displayed. As shown in FIG. 6A,whether or not the selected product is appropriate in light of the usersprofile, healthier alternatives are proposed. Analogous operations ofpresenting various menu alternatives may be performed in a restaurantcontext as will be appreciated by those skilled in the art.

Thereafter, the food purchasing mode routine adds the selectedproduct/entree to the food caloric, nutritional and health relatedportions of the database associated with server 14, if theproduct/entree is acceptable for consumption by the user (88).Products/entrees which are identified as not being acceptable based oninput from the physician's data processing center 20 shown in FIG. 1will include products/entrees that contain ingredients to which the useris allergic or are otherwise unacceptable in light of health-relatedprofile information.

A check is then made at block 89 to determine whether the item selectedis the last item to be purchased. If so, the routine exits. If otheritems remain to be purchased, the routine branches back to block 84 whenuser is again prompted to input food product information.

FIG. 6B is an illustrative flowchart delineating the sequence ofoperations involved in behavioral data acquisition. Upon entry intobehavioral data acquisition processing (109), the mobile computingdevice 1 initially prompts the user to input whether the user isexperiencing any behavioral adherence issues or any other problemsadhering to the dietary protocol or exercise regimen or otherwise needshelp of any kind (111). If the user fails to indicate any issues, themobile computing device 1 prompts the user to continue his or hercurrent behavioral and adherence regimen through a user (e.g., Iphone)display or digitally synthesized verbal message (113).

In an illustrative implementation, if the user's response indicates abehavioral issue, the mobile computing device 1 generates and displays asequence of prompts (115) to elicit a response from the user identifyingthe area(s) of behavioral difficulty as being in a particular categoryor categories, such as dietary adherence, exercise adherence and/orother issues that impact adherence (including, but are not limited to,difficulties caused by symptoms from diabetes, chemotherapy, physicaldisabilities, etc.).

For each category in which an adherence issue is identified (117, 119,120), the mobile computing device 1 generates and communicates in anappropriate sequence one or more questions specific to each identifiedcategory by LCD display and/or digitally synthesized verbal message(121, 122, 123). Although not represented in the simplified flowchart,as will be appreciated by those skilled in the art, once the systemdetermines that no further adherence issues remain to be processed, thebehavioral adherence mode processing ends.

If, for example, the user identifies a dietary behavioral adherenceassessment problem, the system may respond with a series of questionsand prompts such as: Are you hungry? At certain times? Are you feelingtired, stress, bored? Are you going long periods of time without eating?Are you eating too much at a particular meal time? Are you snacking inbetween meals?

If the user identifies that he or she is having trouble adhering to anexercise regimen, the system may respond with a series of questions suchas: Are you having trouble finding time for exercise? Are you gettingshort of breath during exercise? Are you straining muscles duringexercise?

The user responds to these questions via LCD display touch screenselection and/or speech input that is analyzed by speech analysissoftware 8 (124, 125, 126).

The mobile computing device 1 accesses the user profile and associateddatabase(s) to assess exercise, behavioral, nutritional and otherrelated data (127, 128, 129). In illustrative embodiments, mobilecomputing device 1 then displays results to the user pertaining tobehavioral issues and provides feedback regarding the identified issueswith, for example, suggestions to address the identified issues (131,133, 135). An evaluation of the user's responses may lead to any of awide range of dietary and exercise-related behavioral recommendationssuch as: “Add a piece of fruit at 4 pm”, “Stay occupied with a projector activity after 8 pm”, “Eat some protein with each meal,” “Eat smallerportion meals every 3 hours,” “Stop exercising if you feel faint and seeyour physician,” “Slow down your run to a 11 minutes per mile pace,”“Increase your distance run by ¼ mile per day until you reach a distanceof 3 miles,” or step up one or more food and/or exercise ladders asexplained in detailed above, etc..

In illustrative implementation, under circumstances where a user's issuesuggests that the user is not sufficiently motivated to address his orher obesity or overweight condition, a wide range of motivationalinformation may be displayed to the user. In addition to positivereinforcement in light of prior weight loss accomplishments documentedby the system, may be displayed to the user to emphasize the significantincrease in risk associated with being obese and/or overweight. Anillustrative risk table of the type that may be displayed is shown inFIG. 6C, where the reticent obese user will discover that thetraditional bane of Type 2 Diabetes for obese people at 1020% higherrisk (than a healthy person) actually comes in at 2nd place behindEsophageal Cancer at 1520% higher risk.

In an illustrative implementation, a generated behavioral recommendationat blocks 131, 133, and 135 includes links to behavioral web sites andto blog sites where the user is able to interact with others havingsimilar dietary and/or health problems while trying to lose weight,maintain weight loss, successfully complete exercise regimens and combathealth issues through dietary and exercising lifestyle changes.

FIGS. 7A1-7A4 are an illustrative implementation of a user databaseformat to record weight loss for a system-derived weight progressionplan adapted to each user's profile and goals. The illustrative weightloss plan database format stores user data from a “start” point when theuser begins the program (689), through a series of system-programmedweight loss deltas (693), until the user reaches his/her goal (697). Inan illustrative implementation, the system categorizes user's weight ina category from Obese==>to Healthy (690) at a level within that categoryfrom Min==>to Max (691) plus the color associated with his/her categoryfrom Red==>Green (692) at the start date when the user first signed upfor the weight loss plan.

The user database format examples shown in FIGS. 7A2-7A4 show threetypical transitions for users of the present system with color codesreflecting their cumulative progress:

-   FIG. 7A1: user weight loss database format-   FIG. 7A2: from RED obese==>to YELLOW overweight-   FIG. 7A3: from YELLOW overweight==>GREEN to healthy-   FIG. 7A4: from GREEN healthy==>to BLUE RIBBON ideal weight    These 3 examples use the database format shown in FIG. 7A1 with    typical exemplary data values. Accordingly, each of the database    format fields are identically numbered but contain different data    values pertinent to each example.

The database format shown in FIG. 7A1 additionally includes a set of“weight loss deltas” (693) that in this example are four sets of(unspecified) weeks over which the user's goal is to be reached. Itshould be noted that, if desired, there may be more than four such“deltas” defined in increments of time other than weeks. As shown inFIG. 7A1, each of the deltas 1-4 (694) define a number of pounds to belost during each increment of time (695) as will be illustrated below.The weight loss delta portion of the database format also stores thecolor code (696) as it hopefully transitions from Red towards Greenduring deltas 1-4. It should be understood that the weight loss plan maybe modified at any time to adjust the delta periods as well as the deltasubgoals, e.g., to keep the goals achievable in response to the user'smid-stream progress (or lack thereof).

The goal portion (697) of the database format includes, for example, theuser's goal weight (698), the timeframe (699) over which the goal is tobe reached, the category (701) to be reached when the goal is attained,and the level reached (703) within that category when the goal isreached. Additionally, the database format specifies the reward (705)that the user is targeted to receive for reaching the goal. It should beunderstood that such rewards may be allotted upon the user meeting theexpected goal increment at the end of each of the deltas specified inweight loss deltas (693), or alternatively that each delta subgoalreached can be rewarded with another smaller reward.

As delineated above, FIGS. 7A2-7A4 show three examples of use of thedatabase format as applied to an exemplary user transitioning all theway from mid-range obese to his/her ideal weight. In the illustrativeexample, the exemplary user could be one individual transitioning fromobese to ideal weight. However, it should be recognized that the exampleshown in FIGS. 7A2-7A4 may otherwise represent three distinctindividuals. In fact, the 40-pound weight loss depicted in the firstexample is a notable accomplishment in and of itself

The hypothetical user in the example is a postulated as a large-frameobese American male who is 5 foot, 9.4 inches tall and weighs 236pounds. As shown in the first example in FIG. 7A2, the user iscategorized as a mid-range plus obese person whose weight goal has beenset to be 196 pounds in six months, which still is in an “overweight”category at a maximum level. As shown in the first example, the weightloss deltas (696) set intermediate weight goals of losing 13/11/9/7pounds in 7/6/7/6 weeks, respectively. Thus, at a minimum, the systemwill prompt users to enter their current weight at least as of the endof each of the delta periods. During this time frame if the userachieves such weight loss, the users color code changes from red toorange to yellow as shown. In the first example, the user's goal is tolose the 40 pounds necessary to reach 196 pounds in six months and toreach the MAX edge of the “overweight” category in this timeframe. Infact, according to the CDC, the average weight for the American male asof 2010 is 196 pounds at a height of 5 feet, 9.4 inches. Thus accordingto this example, it would take at least six months to bring an obese236-pound male back to the American average of 196 pounds at a height of5′9″, which is right at the MAX edge of the “overweight” category (asshown in FIG. 13C2).

The reward (705) for attaining the goal is set to be 4 iTune songselections selected for example by analyzing the user's iTunes playlistas described further below during rewards processing. If desired areward may be allotted at the end of the successful completion of anintermediate subgoal defined by one of the weight loss deltas (693). Forexample, if the hypothetical user after seven weeks lost 13 pounds andthen after six more weeks lost 11 pounds, the system will automaticallydownload a selected song performed by one of the user's favorite artistsat the end of the 7th week and the 13th week, respectively.

In the second illustrated example in FIG. 7A3, transitioning fromoverweight to healthy, the hypothetical user's goal is to lose 20pounds, from the starting weight of 196 pounds to an end weight of 176pounds, within a 6-month timeframe. During the second set of weight lossdeltas (693), the user is targeted to lose 6/5/5/4 pounds at the end of7/6/7/6 week increments, respectively. If the user successfully meetsthese intermediate subgoals the user will transition from yellow==>tolime==>to green color code ratings and, thus, be targeted to receive areward of 4 downloaded movies or books.

In the third illustrative example in FIG. 7A4, transitioning fromhealthy to ideal weight, the hypothetical user's goal is to lose 10pounds from the starting weight of 176 pounds to an ideal weight of 166pounds within a 3-month timeframe. During the third weight loss deltas(693), the user is targeted to lose 4/3/2/1 pound at the end of 5/3/2/2week increments while transitioning between green==>to aqua==>to bluecolor code ratings. In this example, the blue-green color “aqua” isadded as an incentive for highly motivated users trying to shed the lastfew pounds up to their ideal weight. For this latter example, inrecognition of the arduous difficulty of an obese individual reachinghis “ideal weight”, the system, in concert with cooperating restaurants,may reward the user with a wild salmon dinner (e.g., in certainimplementations with the purchase of a 2nd entrèe).

FIG. 7B illustrates user database formats to provide baseline weightloss records that document a user's food and exercise history from startto the end of the goal period. Such records provide the user's datatrail for every current day X within each of deltas 1-4, where the daysin the delta period run from day 1, . . . X, . . . N, where N is thelast day in a delta period. Thus, the baseline records shown in FIG. 7Bprovide the data that is monitored by the system in order to determinewhether our hypothetical user described in FIG. 7A was able to meet hisinitial six-month goal of losing 40 pounds on a day by day basis. Thebaseline records in FIG. 7B provide a mechanism for tracking food andexercise on a daily basis by creating a new record every time a food isconsumed or an exercise is performed, leading to a “calories IN” foreach food item consumed and a “calories OUT” for each exerciseperformed. While many of the data fields in the records of FIG. 7Bremain unchanged, information such as the calories in, calories out,quantity information, and cumulative totals vary widely over time.

The Exercise Record in FIG. 7B1 is created for each new exercise or eachold exercise with a new tag. Each exercise and food record is created ona trial basis until the exercise is performed or the food is consumed.Such is the case since the user may be considering either exercise orfood to determine whether a given exercise will burn a certain number ofcalories or a given food/meal contains less than a certain number ofcalories. Field 702 in the Exercise Record identifies each exercise(e.g., bench press) with its category (weightlifting) and its mode(upper body push), as shown at 428 in FIG. 3D, at 454 in FIG. 3E, and inthe Weights column 485 of FIG. 3F's Exercise Matrix. The Exercise recordfor the identified exercise item likewise stores the calories burned(Cals OUT) at 704, and its associated exercise tags at 706. As alsoshown in FIG. 3E, a Quantity tag 708 identifies, for example, a numberof pounds lifted or distance run; a Time tag 710 identifies the durationof the exercise in hours (e.g., for workouts or marathons) and/orminutes (e.g., for treadmill sessions or miles run) and/or seconds(e.g., for quick-burst events like sprints and dashes). Likewise, aCycle tag 712 may be included to define the number of sets performed,the number of repetitions performed per set, or other such data. Theexercise record also includes a Usage Counter 714 to keep track of thefrequency the exercise has been performed. Moreover, WRT exercise usagecounter 714, if the same exercise is performed (or WRT the food usagecounter 732, if the same food is eaten) the same old record may beupdated by simply incrementing the usage counter+1. The OtherTags/Qualifiers field 716 is available to track, for example, a handicapor physical limitation the user may have that limits his/her exercisecapabilities (e.g., due to a weak limb or one that has limited range ofmotion). The exercise record also includes a Dates field 718 to registereach date the exercise was performed.

The Food Record shown in FIG. 7B2 is created for each new food or eachold food with a new tag. Field 720 in the Food Record identifies eachFood (e.g., Turkey Breast+gravy) with its meal (Dinner) and its dish(Poultry), as shown at 368 in FIG. 3B and in the Dinner column 383 ofFIG. 3C's Meal Matrix. The Food Record for the identified food itemlikewise stores the calories consumed (Cals IN) at 722, and itsassociated food tags at 724. As also shown in FIG. 3B, a Quantity tag726 identifies, for example, a number of ounces/pounds in the portionentered by the user (e.g., 7.7 ounces) and a Nutrient tag 710 delineatesthe nutrients that are provided (adjusted to a 7.7 oz portion), e.g.:

-   Calories: a minimum 325 Calories IN (16% DV) for its portion size-   Protein: a maximum 67 g Protein (134% DV) and maximum Amino Acids    e.g., all 9 essential Amino Acids @ 108%-183% of RDA for a 220-lb    male-   Fats: a minimum 1.3 g of Saturated Fat (6% DV) and minimum 0.05 g    Trans-Fat-   Minerals: a minimum 219 g of Sodium (9% DV) with maximum 4 mg zinc    (27% DV) and 67 mmg of hard-to-find Selenium (96% DV)-   Vitamins: 26 mg of Vitamin B-3 Niacin (130% DV)-   All the above data was excerpted from the USDA Nutrient DB (see FIG.    4B) and was delineated in the side-by-side comparison with salmon    (see FIG. 4C) Additionally, the food tag field includes an Add-on    Calories tag 730 to define the number of calories attributable to    add-ons (e.g., gravy). As explained above, in connection with the    exercise record, the food record additionally includes a Usage    Counter 732 to identify the number of times a user consumes the    given food (e.g., Turkey Breast). A field defining other tag    qualifiers 734 is provided, for example, to identify a user's food    allergy. A date field 736 is provided for identifying each date the    food was eaten—from the first time until the last—to provide a    history of food consumption. By providing the dates each food was    consumed, the system is able to identify good and bad patterns, such    as the fact that the user generally eats a large steak twice a week,    thereby contributing to an already problematic high cholesterol    problem. In an illustrative implementation, armed with this or    similar data, the system is able to recommend healthier alternatives    (for example, smaller portions with lower cholesterol) to    proactively address the issue in real time before further damage is    done.

In order to track progress towards a user's goal on a daily basis adaily record is maintained and updated with every user's use of thesystem. As shown in FIG. 7B3, a Daily Record is maintained by providingcumulative daily totals of the food record's Calories IN 722 and theexercise record's Calories OUT 704, i.e, once it is confirmed that therecord has advanced beyond the trial stage where the user is merelyconsidering eating a food or doing an exercise. Once the user hasconfirmed eating the food or doing the exercise, the respective caloriesare added into the daily record's food Calories IN field 742 and thedaily record's exercise Calories OUT field 744, as described above WRTthe Food Mode and Exercise Mode (via Calculate Calorie calls F2 in FIGS.4A and E2 in FIG. 5A, respectively). The daily record likewise includes,with the user's cooperation and entry of the user's current weight (748)and the current date (750).

The Daily Record also includes an Expected Weight Loss in field 740which the system calculates for the current day X (as defined at the topof FIG. 7B). For example, here is how the Expected Weight Loss iscalculated for the 1st Delta in FIG. 7A2: the 1st Delta projects anexpected loss of 13 pounds across seven weeks; if the current day X isthe completion of the 21st day, the expected weight loss is 3/7 ths(43%) of the projection for delta 1 (13 pounds) or as a simple equation:3/7×13 lb=5.6 lb expected weight loss by day 21 of 49 days. Based on thecumulative calorie data in the daily record fields Cals IN 742 and CalsOUT 744, a calculated weight loss (gain) field 746 is formulated by ageneric equation: Weight Loss (lbs)=(Cals OUT−Cals IN)/3500 calories/lb,where 3500 cals/lb of body fat is modulated by user weight, age, sex,activity level, and obesity level.

The baseline records in FIG. 7B also include a Delta Record which isupdated daily. The delta record includes a Cumulative Expected WeightLoss field 752 that records the expected weight loss totals for each dayaccumulated across the delta (day 1 to day X, the current day) that isused as a reference. The delta record also includes for the delta periodat issue, a cumulative food Cals IN field 754, a cumulative exerciseCals Out field 756 and a calculated weight loss (gain) 758 that utilizesthe data in field 754 and 756 to determine a calculated weight loss orgain up to the current day X in the period at issue (based on thedifference between calories OUT and calories IN divided by 3500calories, as just described above). The delta record also includes acurrent weight field 760 (and current date field 762).that is entered bythe user (preferably on a daily basis) to provide the system withaccurate weight loss data that is not otherwise derived from cumulativefood and exercise inputs.

Minimizing the Size of System Databases: to minimize the physical sizeof the system databases over many years of anticipated exponentialgrowth, the record structure has been built like an “Egyptian pyramid”for each user:

-   FIGS. 7B1/7B2: the structure is large and volatile at the base of    the pyramid where one record arises from every new/unique Food and    Exercise transaction; volume is minimized by incrementing a usage    counter for each repeated item; and any variations in “tags”    associated with the same food/exercise are merely tacked onto the    variable-length original record to avoid making another record;    nutrients are stored once (in mg/100 g units) and scaled up/down to    portion size-   FIG. 7B3: the structure is steady and predictable in the middle of    the pyramid where just one small record emerges per day for all    Food/Exercise transactions; fixed disk space can be allocated yearly    since the DB only grows 1 record/day; the resulting DB allows the    system to display cumulative weight vs time plots-   FIG. 7B4: the structure is small and pointed at the top of the    pyramid where just one record carries all the cumulative data for    each successive delta; thus, only the original plus 4 delta records    are generated for any given weight plan; the resulting DB allows    quick display of weight vs time plots across all 4 deltas which    simplifies any statistical analysis across the entire population of    users

FIG. 8A illustrates an exemplary user profile record format. FIGS. 8Band 8C respectively illustrate a user's Food Record format and ExerciseRecord format that also may be part of the user's profile or,alternatively, may be stored locally as databases on the user's mobilecomputing device, e.g., an iPhone. The illustrative user profile recordformats 720, 728, and 760 shown in FIGS. 8A through 8C are initiallypopulated during the create user profile processing described above inconjunction with, for example, the flowchart depicted in FIGS. 3A and3D.

As shown in FIG. 8A, the user profile record format 720 includes a userID data list 723 that, for example, is stored as a set of fixed lengthdata records and specify an identified data item 721 and at least onequalifier 722. The identified data items 721 shown in FIG. 8A areillustrative only and may be expanded or contracted to meet the needs ofa given implementation. The illustrative data items are largelyself-explanatory and are only briefly described.

The user ID data list 723 includes a user ID number that is assigned bythe system to uniquely identify the user. Further, a revision level dataitem is included that identifies the number of times that the user hasrevised his or her user profile. The original user profile created bythe user when first using the weight and exercise tracking systemdescribed herein, forms the baseline record for the user and ispreserved intact.

The date and/or time the user initially begins using the system and adevice number, a unique identifier identifying the user's portablecomputing device (such as a cell phone serial number), are also stored.The identification of, for example, a cell phone serial number permitsadded security features to be included in illustrative implementations.The user's email address may be acquired to serve as an alternativecommunication link and to, for example, communicate with the user to,for example, enabling the system to confirm that changes made to theuser's profile were actually made by the authorized user.

The system also records in the user's profile, the user's name (e.g.,while a name like “John” may be accepted, the system may also use aunique numeric modifier to distinguish John Smith from John Doe), sex,age, height, wrist size, and waist size. As explained herein,measurements of wrist size may be simply made by users with a string anda ruler and permits the system to identify the appropriate category forthe user's body frame. The user's waist size permits the system todetermine whether the user should be characterized as, for example,overweight or obese.

The exemplary list of data items 721 include an ID flag that identifiesany change that is made in the user data item list so that the systemmay, if desired, challenge any such change. In an illustrativeimplementation, any time a change is made in the user profile, the datais recorded as a subsequent revision of the user's profile, e.g., Rev 2is a revision of Rev 1.

The user ID data list 723 includes various weight related entries suchas weight 0, weight 5, weight 10 which respectively store the user'scurrent declared weight, the user's weight five years ago and the user'sweight 10 years ago. The user profile also stores the user's idealweight by accessing the ideal weight database shown in FIG. 13C usingthe data entered including the user's gender, weight, height, wristsize, and waist size. In certain implementations, the user ID data list723 includes a weight flag to indicate whether the user has modified hisor her entered weight. In other alternative implementations, the user'scurrent weight may be stored in memory locations other than the user'sprofile for generating the weight displayed in FIG. 10. The user ID datalist 723 also includes a defined set of goals that the user definesduring the processing at block 308 of FIG. 3A. A user may, for example,define a goal of losing or gaining weight including a specific goalweight (goalW).

In certain illustrative implementations, such a user specified goalweight may be used to set the user's original goal weight. In otherillustrative implementations, particularly those in which the user hasselected no weight goal, the ideal weight database illustrated in FIG.13C may be used to set an initial goal. In yet other instances, aphysician, nutritionist, personal trainer or other third party may haveset a weight goal for the user.

Turning back to FIG. 8A, in addition to a weight goal, the system may,in illustrative implementations elicit further user goal informationwhich is recorded by the system. For example, the user may, for example,in response to system queries indicate a goal of getting stronger(goalS) that may be attained by increasing the weight used during theuser's top-five weightlifting exercises. Thus, in an illustrativeimplementation, an assessment of the user's top-five weightliftingexercises may be used to assess the user's baseline level of strength.Moreover, such an assessment can be used to define a reasonable approachthat may be used to increase strength such as by increasing the initialweight used for bicep curls from 20 pounds to 30, 35, and 40 pounds overtime.

Similarly, a user's indicated goal of increasing endurance (goalE) maybe specified in response to system queries (e.g., “Is your goal toincrease endurance?”) and attained by assessing the user's top-fiveendurance exercises. For example, endurance may be enhanced byincreasing the distance run, cycled, or swum during one or more of theuser's top-five endurance exercises. A goal of getting healthier (goalH) may be specified in response to system queries (e.g., “Is your goalto get healthier?”) and may be attained by assessing the user's top-fivefoods/meals and, for example, by recommending alternative foods high invitamins and health promoting nutritional parameters. Further, a goal ofdropping bad habits and/or treating addictions (goal D) may beidentified in response to system queries (e.g., “Is your goal toincrease endurance?” and “what is your bad habit or addiction?”) whichcan be attained by, for example, monitoring and rewarding the user'sprogress with respect to not smoking, not drinking, not using drugs,food addictions, etc.

The user ID data list 723 also includes a goal date for achievement of adefined goal and may be set by the user or system. A goal flag is setupon any change in an identified goal. Thus, if the user defines a newgoal weight, the system re-calculates any prior plan for goal attainmentto take into account a new endpoint.

As shown in the FIG. 8A illustrative implementation, the user ID datalist 723 also specifies three levels of rewards to be applied to theassociated user for reaching both the users final goal and any of anumber of various subgoals. In this example, the system identifies a“rewardDS” that is the lowest level reward which is triggered by a userreaching one of the four weight loss Delta subgoals, such as isdescribed in FIGS. 7A1 through 7A4. The system also identifies a“rewardFG” that is the highest level reward for reaching the user'soverall final goal. Additionally, the system also identifies a“rewardBR” that is a “Blue Ribbon” reward recognizing that the user, forexample, exceeded his or her final weight loss goal by 10%.Alternatively, the “rewardBR” may be reserved to users who achieve theirideal weight has specified by the ideal weight database shown in FIG.13C.

As illustrated in FIG. 8A the user profile record formats 720 alsoincludes a list of user health data 724. Such user health data includesthe user's own impression of his/her general level of health (level 0),and his/her declared level of health, 5 years ago and 10 years ago(level 5 and level 10). In an illustrative implementation, a user maycharacterize his general level of health on a scale of 1 to 5 that maybe stored as a fixed length record. By having multiple levels relatingto the current general level of health and past levels of health permitsthe system to determine whether the user perceives his/her general levelof health as improving or declining over time, which may affect, interalia, the severity and/or intensity of exercises suggested for the user.

The user health data list 724 also provides for variable length recordswhich allow a user to define, for example, his or her handicaps. Thus, auser may, for example, indicate that he or she is confined to awheelchair, lacks a specified limb, has limited eyesight, etc. In anillustrative implementation, for each of the specified handicaps theuser is asked whether the handicap has existed for five years or 10years to determine, inter alia, how recently the user might have eatentypical foods and/or performed typical exercises. The user health datalist 724 also includes an ailment data item, wherein the system recordswhether the user is suffering from, for example, asthma, allergies tospecific foods, etc. in the period of time over which the user has beensuffering from such ailments. Moreover, the ailment data item may beused to indicate that the user is a diabetic, has high blood pressure,cardiac issues etc.. The health data list 724 also includes a data itementry for injuries 1 to N to identify temporary health issues, such as asprained ankle or a separated shoulder, which usually heals over a shorttime.

The user health data list 724 also includes a Weak Flag that is set foreach weak limb (or associated muscle, such as a hamstring). Such a flagis set if, for example, a user identifies a weak left or right arm thatcannot exercise to the same extent as its counterpart, e.g., manyright-handed tennis players have weak left arms Similarly, a Range Flagis similarly set if, for example, a user identifies a limb or (orassociated muscle) that has a limited range of motion. Given suchlimitations, the system would not recommend exercises that involvemovement beyond the limited range, or that require equal pressure, e.g.,on a loaded barbell—i.e., in this case, the system would recommendisolated exercises (described above) where, for example, the weaker armwould use a lighter dumbbell.

In an illustrative implementation, the user health data list 724 alsoincludes a data item for the user to identify a range of habitsincluding but not limited to smoking, drinking, drug issues, foodaddictions etc.. Additionally, a user's medications are identified that,for example, are utilized to treat any of the identified ailments andinjuries. The list of medications may, for example, be analyzed by thesystem to determine whether such medications will present normal weightloss or tend to trigger increased weight gain. If such is the case, thesystem may recommend alternative medications or alter goals in light ofsuch a medication.

The user health data list 724 also includes a data item “Restrict F” toidentify foods excluded due to food allergies, ailments, or any othercondition identified by the user. For example, a user who identifies apeanut allergy may identify specific peanut containing foods that shouldbe excluded. Moreover, in an illustrative implementation, the system mayaccess well-known sources for a list of foods that should be avoided inlight of the given allergy to identify foods that may be unknown to theuser that may cause issues in light of an identified allergy. Further,the user's health data list 724 includes a “Restrict E” data item thatidentifies specific exercises that are either limited or excluded inlight of handicaps, ailments, or injuries identified by the user.

Food-related restrictions may be stored in the user's profile based uponinformation received directly or indirectly from a participatingphysician and/or nutritionist and/or healthcare provider including anythresholds for the user including but not limited to caloric intake,grams of saturated fat, grams of trans fat, milligrams of cholesterol,milligrams of sodium, grams of carbohydrate dietary fiber, grams ofcarbohydrate sugar, grams of protein, amounts by percent of dailyrequirement of Vitamin A, Vitamin C, Calcium and Iron, amount ofexercise energy expenditure and other variables related to specificmedical, nutritional and other needs of the user. Moreover, based uponinput received directly or indirectly from a physician, restrictionsthat are stored in the user's profile may be placed on both food andexercise for users suffering from cardiac issues. Checks are made toensure that any health-related nutritional and exercise thresholds havenot been exceeded. Examples include excess sugar consumption by userswho have diabetic or borderline diabetic issues, excess sodium in thosewith hypertension, excess potassium and protein in those with renaldisease and exercise limitations in the user with cardiovasculardisease.

In illustrative implementations, based directly or indirectly on inputfrom a physician, food consumption and exercise thresholds may bedynamically changed in the user's profile as necessary. Exercise, forexample, may increase from an expenditure of 300 calories per day, 3times per week early in the process to 500 calories per day, 5 times perweek with light weights by the end of the active weight loss process.Calories may be advanced at this point from, for example, 1200 per dayto 1500 per day. In illustrative implementations, such restrictions maybe identified in the user's profile in the variable length food andexercise restriction segment thereof. As another example of dynamicregimen changing, if a behavioral issue exists such that the user is notdoing well adhering to the initially prescribed dietary regimen, anassessment of the issues contributing to the adherence problem can bemade and the dietary regimen might be changed based upon an analysis inconjunction with the FIG. 6B behavioral processing, for example, byincreasing calories or adding more fruit to help the user improveadherence.

FIG. 8B illustrates a portion of the user profile/food record format 720that stores the user's top five favorite foods and/or meals 729. In anyillustrative implementation, it should be understood that, while theuser profile record format specifies the user's Top 5 favoritefoods/meals as shown in FIG. 8B, such data is stored both locally (e.g.,in the user's iPhone) and remotely (in the system server 14) as aseparate Food Record database. It should also be noted that, while thesystem encourages the user to enter all the food data he/she can as ameal or as separate items, all such data entered and stored (e.g., inthe record format of FIG. 8B) is ultimately converted and stored asindividual food items in the food record format of FIG. 7B2, one recordper item (plus tags and add-ons).

In an illustrative implementation, the same storage format andsequencing is used for recording the user's Top 5 favorite foods/mealsis also used for recording everyday food consumed by a user at, forexample, a restaurant via the Food Mode process of FIG. 4A. In thisexample, a user is initially prompted to enter his or her most favoritefood/meal. The system maintains a list of favorite breakfasts, lunches,and dinners entered by a user (including all add-ons) such that, forexample, the user may identify his top favorite breakfast as “breakfastnumber 1” for ease of subsequent data entry. Such a favorites list withadd-ons is displayed to the user so that he/she can quickly andaccurately select a predefined meal that he/she habitually consumes forconvenient entry into the system. Once the user realizes that everyfood/meal entered gets offered back to choose again and again, he/shewill be more inclined to enter more foods/meals from then on.

As illustrated in FIG. 8B, after certain favorite-related entries areprovided by the user (730) as explained below, the system determines andstores in the user profile, calories consumed 741, the amount ofmacronutrients (carbs, proteins, etc.) 742, and the amount ofmicronutrients (vitamins/minerals) 743. Storing such nutritionalinformation in association with the user's profile permits efficient,local, off-line accessing of such information whenever such favoriteitems are consumed. As shown in FIG. 8B, the user's entries are totaled(736) so that the total nutritional impact of the user's selections isappreciated by the user in real time.

In addition to the amount of calories, macronutrients, andmicronutrients, the system associates color codes with the user'sprofile that may be stored in a linked shadow database. As illustratedin FIGS. 2C-2E, in an illustrative implementation, every food/nutrientand exercise/activity is assigned a color code reflecting its relativevalue “Worst 1==>5 Best” that is linked to the User's profile and/orfood database. As a rule of thumb, in an illustrative implementation,every food color code has the same bad==>good value applicable to allUsers, whereas all exercise color codes are only bad==>good with respectto each individual's capabilities and user profile in FIG. 8A.

The color codes assigned to each of the foods/add-ons andmacro-/micro-nutrients are mapped (as numbers 1==>5) into a “shadow” DBcorrelated 1-for-1 with this DB. The shadow DB provides instantaneousaccess to associated color codes, since each code is the exact samerelative displacement within that DB as its parent data item in theabove FIG. 8B related DB. (As a system-level programming note that canbe appreciated by those skilled in the art, such a fixed “relativedisplacement” is easily incorporated for color code access made viasoftware instructions, but it is far more efficiently enabled by“indirect addressing” offsets imbedded in the hardware instructions.)This shadow DB requires minimal disk space since, in an illustrativeimplementation, only single-digit numeric codes (and no text) are storedtherein. The shadow database, in an illustrative implementation,occupies the lowest level of a hierarchical database system in whichcolor codes are associated with each selected food and exercise item.Thus, each time a food item is identified and accessed, an associatedcolor code from the shadow database is automatically retrieved anddisplayed therewith in a manner that can be appreciated by those skilledin the art.

While most of the data items referenced in FIG. 8A are fixed length dataitems, the data items shown in FIGS. 8B and 8C relate to variable lengthopen-ended lists of items. For example, a favorite meal identified by auser may include a main course of beef and any number of a wide range ofvegetables such as green beans, spinach, squash, etc., an add-on sauce,and a variable number of drinks. Thus, the data records are open-endedand variable length, where each of the fields in the record is avariable length field, as is indicated, for example, by the data flow inFIG. 3B. In an illustrative implementation, for each user dish chosen,the tags indicated in FIG. 3B (which have the greatest variability,e.g., as independent add-ons) are stored in an associated separatedatabase, such that the dishes are stored in one segment of the databaseand the tags are stored in another cross-referenced segment of thedatabase in a variable-length format.

FIGS. 8B/8C here have a dynamic variable-length database structure in aneffort, for example, to minimize the size of the User Profile DB:

-   all food/exercise data with wide-ranging values are variable-length    open-ended lists, rather than fixed choices-   all individual text fields are also variable-length, rather than    widened them out to the maximum text value-   all but the 1st DB segment are variable-length, e.g., adding up to 5    Favorites per each category-   for quick “burst-energy” exercises like sprints and weightlifting,    the record is extended by modular data for 1==>N Trials/Sets (see    the cyclical format)    The following is an exemplary sequence of DB segments with their    respective variable lengths, if any:

DB Segment Variable Length [1] FIG. 8A: User ID None—all data itemsappear in short (per FIG. 3A) fixed-length fields [2] FIG. 8A: UserHealth Every data item except the fixed-length (per FIG. 3A) first item,General Level of Health [3] FIG. 8B: Top 5 All 12 Dishes, plusSnacks/Drinks, and Favorite Foods Vitamins/Minerals [4] FIG. 8C: Top 5All 5 Categories, plus increasing Favorite Exercises Goals/Sets @different Trials/Reps [5] FIG. 8A/8B/8C: Exact same variability as dataitems in Color Code “shadow” DB segments [2]/[3]/[4] above

As indicated in FIG. 8B, the user identifies a category 738, add-ons 739and a quantity 740. It is noted that the breakfast, lunch, and dinnercolumns in the food database illustrated in FIG. 3C correspond tocategories B/L/D (breakfast/lunch/dinner) 738 and the associated add-ons739 (which may include any number of additional add-ons beyond the twoshown in FIG. 8B). With respect to the categories 738, in anillustrative implementation, the cycle of 12 dishes identified in rows732 to 734 repeats up to five times each for for the user to selecthis/her Top 5 breakfasts, Top 5 lunches, and Top 5 dinners. It is notedthat, in an effort to be as user-friendly as possible in this very firstuser contact, the system will accept as many as 10 or as few as one Topitem that the user is willing to share—the more he enters, the betterthe system will know him

In an illustrative implementation, in completing his or her userprofile, the user is prompted to select a category of favorites such asB or L or D, and then select any desired add-ons (739) and quantities(740). Thus, if for example the user chooses the category lunch (738),the user may select beef, chicken, fish, or a vegetable (733) togetherwith desired add-ons (739) and then add any desired dishes from rows732, 734. The user may next select a similar set of Top 5 snacks and/ordrinks indicated in row 735. Once the user selects a particular categorysuch as drinks, a user will be presented with popular examples such ascoffee and cream as shown in the food database of FIG. 3C to stimulatehis/her participation. With respect to snacks and drinks (735), theseitems also constitute open-ended lists that store from 1 to N items theuser may consume.

Furthermore, in an illustrative implementation, the system next promptsthe user to enter his/her favoritevitamins/minerals/omega-3s/antioxidants/herbs/etc. which are stored asan open-ended list for each category, such as is shown in FIG. 2E. In anillustrative implementation, system recommendations may be provided tothe user with respect to additional vitamins or minerals, depending uponthe user's identification of vitamins and minerals taken on a regularbasis.

FIG. 8C illustrates a portion of the user profile/exercise record format760 that stores the user's top five favorite exercises and/or activities747. In any illustrative implementation, it should be understood that,while the user profile record format specifies the user's Top 5 favoriteexercises/activities as shown in FIG. 8C, such data is stored bothlocally (e.g., in the user's iPhone) and remotely (in the system server14) as a separate Exercise Record database. It should also be notedthat, while the system encourages the user to enter all the exercisedata he/she can as a circuit set or as separate items, all such dataentered and stored (e.g., in the record format of FIG. 8C) is ultimatelyconverted and stored as individual exercise items in the exercise recordformat of FIG. 7B1, one record per item (plus tags).

In an illustrative implementation, the same storage format andsequencing is used for recording the user's Top 5 favoriteexercises/activities is also used for recording everyday exerciseperformed by a user at, for example, at home or at a gym via theExercise Mode process of FIG. 5A. In this example, a user is initiallyprompted to enter his or her most favorite exercises/activities. Thesystem maintains a list of favorite activities, sports, and conditioningexercises entered by a user (including all tags) such that, for example,the user may identify his top favorite activity as “Activity number 1”for ease of subsequent data entry. Such a favorites list with tags isdisplayed to the user so that he/she can quickly and accurately select apredefined exercise that he/she habitually performs for convenient entryinto the system. Once the user realizes that every exercise/activityentered gets offered back to choose again and again, he/she will be moreinclined to make the effort to enter more exercises from then on.

FIG. 8C illustrates a portion of the user profile/exercise record format760 that stores the user's top five favorite exercises and/or activities747. In any illustrative implementation, it should be understood that,while the user profile record format specifies the user's Top 5 favoriteexercise/activities as shown in FIG. 8C, such data is stored bothlocally (e.g., in the user's iPhone) and remotely (in the system server14) as a separate Exercise Record database.

The entries in the user profile/exercise record format 760 are providedby the user except for the Cals OUT that are calculated by the system.

As can be seen from FIG. 8C, the categories 754 parallel in manyrespects to the modes of activities identified, for example, in FIG. 3Dand in the FIG. 5A Exercise Mode flowchart. Thus, in entering his or hertop five favorite exercises/activities, the user selects activities fromthe following categories: Daily Activity 748, Periodic Activity 749,Sports (Competitive and Noncompetitive) 750, Conditioning(Noncompetitive) 751, Weightlifting (Noncompetitive) 752, and multipletrials/sets 1 to N (of quick “burst energy” exercise) 753.

With respect to the categories 748 to 753, the data entry cycle repeatsup to five times for each of the Daily, Periodic, Sports, Conditioning,and Weights exercises. As shown in FIG. 8C, each of the Daily Activity748, Periodic Activity 749, Sports 750, and Conditioning 751 categoriesis characterized as being either an indoor or outdoor activity.Additionally, each exercise is qualified by the user specifying a levelwithin the identified category and a specific exercise item such asriding a bicycle to work, playing golf, football, running, using thestair stepper or doing bicep curls (755). Further, each suchactivity/exercise is qualified by entries defining appropriatequantities for the identified activity (pounds/distance,quarters/distance, resistance, etc.) 756, time/duration 757, frequency758, cycle information including goals/sets, trials/reps (759), andcalories burned (Cals OUT) 760 that are calculated as shown anddescribed WRT the Exercise Mode flowchart in FIG. 5A.

Periodic activities 749, as described above in conjunction with FIGS. 3Dand 5A, include various indoor and outdoor activities that may beperformed either at home or away from home. Indoor activities include,for example, vacuuming, washing floors, and playing pool. Outdooractivities include, for example, washing a car, mowing the lawn, etc.

In an illustrative implementation, all competitive and noncompetitivesports are grouped together in a Sports category 750. where each teamsport is further qualified by the user's position on a team such asgoalie, pitcher, quarterback, guard etc.. This is because the positionon a team may significantly impact the calories burned duringparticipation in sport. For example, an outfielder in baseball burnssignificantly less calories than the team's pitcher. Furthermore, eachsport is qualified by the user's level of competition, which in turnwill trigger changes in the Cals OUT calculation. For example, aprofessional soccer player will inevitably burn more calories playingsoccer than a middle school player. Such levels of competition include,for example, training only, recreational, middle school, high school,college, club sport, semi-professional and professional. Cycleinformation is also recorded, if pertinent to the sport at issuefocusing on, for example, goals, sets, planned attempts/trials, and ornumber of actual repetitions completed. For example, a 260-lbweightlifter tries to bench press 200 lbs for 3 sets of 5 reps—hemanages to complete the first 2 sets without a problem but, as lacticacid builds up, he fails on the 4th rep of the 3rd set. Using the cyclic“Multiple Sets” provision of the Exercise DB here, this would end up asa parent Bench Press record with set tags 1/2 showing Pass and tag 3showing Fail.

With respect to conditioning activities 751, a wide range of activitiessummarized in conjunction with FIGS. 3D and 5A is contemplated includingindoor activities such as situps, push-ups, and Pilates. Indooractivities using machines such as a stationary bicycle, treadmill,rowing machine, stair stepper etc., are also tracked. A wide range ofoutdoor conditioning activities are also contemplated for trackingincluding walking, jogging, running, swimming, skating, etc.. As shownin FIG. 8C, such activities are qualified by specifying such quantitiesas the distance run and the resistance level set on the equipment.Additionally, the time participating in the identified activity isentered together with the frequency per day or per week. Cycleinformation is also recorded if pertinent to the conditioning activityincluding the user's goals, sets, planned attempts/trials, and or numberof actual repetitions completed.

The Exercise Mode routine in FIG. 5A (which makes each record for theExercise database here) also tracks weightlifting exercises 752. Suchactivities are identifed in FIGS. 3B and 5A as described above. Forexample a user who performs bench presses would have such exercisecategorized as an “upper body” exercise activity at the “level” of “bodyonly” and with “bench press” identified as the exercise item. In thisexample, the user then identifies the amount bench pressed underquantity, e.g., 200 pounds (as just described in the dynamic MultipleSets example above). To complete the cyclic Multiple Set records, theuser also enters whether he Passed or Failed the lift, his rest intervalbetween sets, and his final pulse rate in response to display of hisTarget Pulse Range calculated @ 60-85% of the predicted MAX heart ratefor his age—i.e., Target Pulse Rate=(60-85%)×(220-age) for any healthyuser at age 20==>70. At different times thereafter, the user alsoidentifies the time spent bench pressing and the number of times perweek such an exercise is performed. The system, utilizing a database ofthe nature shown in FIG. 5B, calculates the calories burned during suchan activity and stores such a value in the Cals OUT field 761 associatedwith this weightlifting exercise.

The multiple trials/sets entry 753 permits the system to handle“burst-energy” exercises below ½-hour to extend the tracking systemacross the entire sports spectrum, i.e.: from slow “low-energy”exercises greater than 30 minutes==>to “quick-burst” acts of less than30 seconds. This format for repetitive “sets” of a given lift may beapplied to ALL likewise-repetitive “trials” for increasing Track & Field“goals” in the sports record 750: e.g., shortraces/sprints/shotputs/throws/vaults==>for a single BEST/MAX goal e.g.,pole vaults/high jumps/long jumps==>for an increasing-level BEST/MAXgoal. That is, for such a given track and field event, the goal is toreach a MAX height/distance in the trials allowed.

In an illustrative implementation, the tracking of weightlifting may beexpanded from exercise record 752 via the use of the multipletrials/sets entry 753 (see the dynamic Multiple Sets just described inexample above). If, as in the earlier example, the user completed the5th repetition of bench pressing 200 lbs, the user will be credited withpassing the trial. Additionally, in an illustrative implementation theuser's target pulse range based upon age limitations is identifiedtogether with the pulse rate achieved during the exercise. Rest intervalinformation between repetitions is also identified. Such information isrecorded for each of multiple trials and sets. The system may thenrecommend to the user, the parameters of the next set based on theuser's performance of the just completed set. Thus, such timelyinteractive information allows the system to dynamically recommendincreasing/decreasing the amount of weight being bench pressed,decreasing the rest interval, increasing/decreasing the number ofrepetitions etc.

In this fashion, in an illustrative implementation, such a weightliftingtraining protocol permits the system to act as a “personal trainer,”interactively guiding the user through a rigorous weightlifting workoutin real time. In an illustrative implementation, through the use ofdatabases stored locally in for example, a 64 GB local cell phonememory, such personal trainer functionality may be accomplished off-linewithout any internet link to the remote server.

The inherent advantages of this efficient, dynamic DB format are:

-   ALL exercises can be tracked . . . from longest/slowest==>to    shortest/fastest-   the DB's compact size allows, in an illustrative implementation, the    whole DB to be locally stored in the user's smartphone-   this enables the user to access/update the DB in real-time, without    being online with a server enabling full functionality inside a gym    or other location where there's often no signal-   the system provides real-time feedback to the user, e.g., based on    the results of previous N−1 set (pass/fail, rest interval, pulse    rate, etc), the system can adjust optimal weight/reps for sets    N/N+1/etc so as not to “kill” user enthusiasm.

FIG. 9 is an illustrative depiction of a calculate calories subroutine.The calculate calories subroutine has four distinct subroutines, eachhaving a respective entry and exit point associated with nodes Food1(F1), Food2 (F2), Exercise1 (E1), and Exercise2 (E2). Each of these foursubroutines calls a common subroutine to display calories that is shownin FIG. 10.

Beginning with the F1 subroutine, this subroutine is executed to performthe functions shown in FIG. 4A associated with the Nutrient Database 566and the function of displaying food nutrients with quantities and colorcodes 568. As shown in FIG. 9 when the Nutrient Database is accessed(770) to display nutrients (772), the system looks up both the food itemand the add-on in the system Nutrient Database which in turn is based ondata obtained from the USDA Nutrient Database (774). Thus, the caloriedata contained in the USDA nutrient database is stored, for example, ina database resident at server 14 shown in FIG. 1.

Thereafter, as indicated at block 776, the calories contained in thefood and add-on are calculated to factor in the quantity of food andconvert to the unit of measure being tracked by the system based uponthe data been entered by the user (e.g., 8, 10, 12 ounces). Such acalculation is necessary to scale the user's portion up/down to matchthe unit measure of the USDA database calorie data which is inmilligrams per 100 grams (mg/100 g). Once the food and add-on caloriesare each calculated, the associated values are stored in a trial foodrecord (778). The data is not permanently entered into the system untilit is confirmed that the user is past the consideration stage and hasconsumed the food. The food being consumed together with all nutrients,such as grams of proteins, are displayed to the user (780), and thecalories consumed are also displayed (782). Thereafter, the routinereturns to block 568 of FIG. 4 (which called subroutine F1) in light ofthe completion of the processing associated with the display of foodnutrients with quantities and color codes.

As previously described in conjunction with FIG. 4, after the completionof processing associated with block 568, the system checks to determinewhether the food has been eaten at block 570 and, if so, the user fooddatabase is updated by updating the user's favorites and creating a newrecord. The processing associated with the user Food Database at block571 is performed in this example by calling the F2 subroutine. As shownin FIG. 9, utililty subroutine F2, which is called from the FoodDatabase block 571, operates to update the user's food favorites. In sodoing, the food record shown in FIG. 7B is updated/created (790) in thefood record's food usage counter (732) in FIG. 7B is incremented by 1(792). Thus, if the food at issue is consumed for the first time, theprevious count in the food usage counter will be zero, resulting in thecurrent usage counter state being incremented to “1.”

Thereafter, the food calories in (i.e., consumed) are added to both thedaily record and the Delta record (796) shown in FIGS. 7B3/7B4,respectively. The calories are then displayed (798) and the routinereturns to the calling routine in FIG. 4 to update favorites at block573.

Turning next to the Exercisel subroutine (E1), this utility subroutineis called during the processing previously described in FIG. 5A.Initially, the activity database is accessed (616) to begin calculatingcalories burned for a given activity using the calories burned and/orthe calorie coefficient data in the calorie coefficient per useractivity database illustrated in FIGS. 5B/5C (806). The E1 subroutinelooks up the exercise as further specified by the associated tags in thesystem Activity Database, which is illustrated in FIGS. 5B/5C and isbased on the “Compendium of Physical Activities” published by Ainsworthet al. (2011), as updated by Arizona State University in August 2012.

Thereafter, the calories burned during exercise are calculated using thecalorie coefficient obtained from the database illustrated in FIGS. 5Bin 5C (808). The calories burned are determined by the user's bodyweight times the calorie coefficient. The calories burned are thenstored in a trial exercise record (810) and the calculated calories,together with the associated exercise tags including the color code, aredisplayed (812). The subroutine then returns to FIG. 5A to display thechosen exercise (620), enabling the performance of this displayfunction. A check is then made to determine whether the exercise wasdone (680) as previously described in conjunction with FIG. 5A. If so,the update favorites processing commences.

Update favorite processing (684) calls the Exercise 2 subroutine (E2).Upon the initiation of E2 (816), the routine accesses the exerciserecord shown in FIG. 7B (820) to increment the exercise counter by one(822). Thereafter, the exercise Cals IN from the calculation insubroutine E1 at block 808 are added to the baseline records of FIG. 7B(821) including the daily record and the delta record (826). Thereafter,the calories and other associated exercise data are displayed (828) andthe routine returns to the update favorites processing at block 684(830).

FIG. 10 is an illustrative display for depicting to the user certaincalorie and goal information. The display chart shown in FIG. 10 appliesto any goal over any given time where the current value for the currentday X lies somewhere in between start day 1 and a goal day N (expressedas 1, . . .X, . . . , N). The meaning of “to date” in FIG. 10 is thecumulative value of the variable across time from the starting date inthe program to the current date.

The display in FIG. 10 displays expected calorie values based on goalcalculations and actual calorie values accumulated from caloriesconsumed and calories burned (today and to date), all of which can becompared on the LH side to the current actual weight measurement inputby the user. Alternatively, instead of cumulative calorie levels, thedisplay could show the calculated weight (or loss or gain) resultingfrom the cumulative calories OUT versus calories IN. Either way, the netresult here is that the user now can, at a glance, compare the actualweight he/she just entered today with both the expected weight he/shewas supposed to reach by today and the actual weight (calculated fromhis/her exercises versus foods eaten) that should have resulted bytoday.

The display shown in FIG. 10 may, for example, be designed to illustrateperformance during one of the four Delta periods described above inconjunction with FIG. 7A. With respect to the user's goals, under the“goal weight” display, the user starting weight, such as 300 pounds isdisplayed (852). Additionally, in an illustrative implementation,associated with the “Goal Weight” heading, the delta period isidentified together with the goal weight calculated for achievement atthe end of such a delta period, e.g., 285 pounds. Further, the user'sexpected current weight, such as 290 pounds, is displayed (854).Additionally under the “calories to date” heading the total expectedcalories IN (858) and the total expected calories OUT (860) aredisplayed. Further, under the expected values portion of the display inthe “goal cals today” heading, the expected goal for the calories in(864) and calories burned/out (866) for the current day are identified.

In this example, with respect to the “actual values” for user weight(868), the user's starting weight is again identified at (870) forcomparison with his/her actual current weight displayed at (872). Inthis fashion, a user can see his/her actual current weight and comparethe actual calculated weight with the current expected weight for goalachievement at block 854. In an illustrative implementation, thisdisplay may be augmented with the color codes associated with the user'sweight loss progress to date, visually depicting the degree of progress.Additionally, under the “user cals to date” heading (874), the actualtotal number of calories consumed (876) and the total calories burned(878) during the delta period to date are identified for comparison withthe calculated calories IN and calories OUT for goal achievement.

In an illustrative implementation, this display may be augmented withthe color codes associated with the user's progress to date regardingcalories consumed and burned, visually depicting the degree of progress.Finally, under the “user calls today” heading, the actual caloriesconsumed (882) and the total calories burned (884) during the currentday are displayed for comparison with the calculated calories IN andcalories OUT for goal achievement for the current day. In anillustrative implementation, this display may be augmented with thecolor codes associated with the user's performance during the currentday regarding calories consumed and burned, visually depicting theperformance.

FIG. 11 is a flowchart delineating the sequence of operations involvedin data and goal analysis. The data and goal analysis subroutine isentered (200) upon being called by various routines described hereinthat implement the functionality identified in the figures referencedbelow. The data and goal analysis processing in FIG. 11 occurs upon thegeneration of any new food record (202), any new exercise record (212),any violation of user restrictions (222), or any new weight beingentered by the user (228).

A check is initially made at block 202 to determine whether any new foodrecord has been generated. If so, then a check is made at block 204 todetermine whether the food consumed by the user had an associated colorcode other than Green (where the value 5 indicates the healthiest foodcolor coded Green as explained above). If any food in a meal beingconsumed is other than the healthiest food (as indicated by Green), thepreviously described “stepping up the ladder” processing is initiated.Thus, as indicated at block 206, the system recommends food(s) at thenext higher color code value to encourage the user to eat in a morehealthy fashion. After recommending an alternative food to the user, thefood recommendation is stored in a shadow database location associatedwith the food record (208). Thereafter, a daily food flag is set and thedaily record shown in FIG. 7B3 is updated. The daily food flag indicatesthat a food record was constructed on the current day. Additionally, thecumulative “Cals IN” entry in the daily record shown in FIG. 7B3 isupdated (210).

After the processing at block 210, or if the check for a new food recordindicates that there is no new food record to process, a check is madeat block 212 to determine whether there is a new exercise record toprocess. If so, a check is made at block 214 to determine whether anyassociated exercise was performed that has an associated color codeother than Green (and therefore has an associated value less than 5). Ifany exercise is performed other than the healthiest rated exercise forthe user (as indicated by the “Green” color code value 5), as indicatedat block 216, the previously described “stepping up the ladder” exerciseprocessing is performed. Thus, if a new exercise record indicates thatthe user ran 2 miles in 30 minutes that might be classified as a “Red”color code, the user will be, for example, encouraged to run at asomewhat faster pace to reach a pace that would be classified using an“Orange” color code instead of the original Red color code. Thus, asindicated at block 216, the system recommends one or more exercises atthe next higher color code value to encourage the user to exercise in ahealthier fashion.

After recommending an alternative exercise to the user, the exerciserecommendation is stored in a shadow database location associated withthe exercise record (218). Thereafter, a daily exercise flag is set andthe daily record shown in FIG. 7B3 is updated. The daily exercise flagindicates that an exercise record was conducted on the current day.Additionally, the cumulative “Cals OUT” entry in the daily record shownin FIG. 7B3 is updated (220).

After the processing at block 220, or if the check for a new exerciserecord indicates that there is no new exercise record to process, acheck is made at block 222 to determine whether any of the user'srestrictions have been violated. The user's profile record format 720 ismonitored to, for example, check the foods excluded in light of the dataitem RestrictF stored in the user health data list 724 shown in FIG. 8A.Additionally, the user's health data list 724 is monitored to determinewhether specific exercises were limited or excluded as indicated by dataitem RestrictE. If it is determined that a new food record or newexercise record violates any known restriction, then a warning displayis generated to warn the user that a restriction has been violated(224).

In illustrative implementations, it is contemplated that this warningsystem can be used to warn the user about a wide range of health relatedissues. For example, the system can warn an unwary user that a foodcontemplated for consumption includes a peanut-based oil to which theuser is allergic Similarly, a user may be warned that a food to beconsumed includes a sufficient amount of sugar to raise a concern inlight of the user's indicated issue with diabetes. Moreover, a user maybe warned if a food or exercise record indicates consumption of a foodor participation in exercise that does not comport with the userprofile's designation of handicaps, ailments, injuries, habits, ormedications. A warning may be generated, for example, if a food orbeverage (such as alcohol) to be consumed is not appropriate in light ofmedications taken. In illustrative implementations, such restrictioninformation may be based on input received from the user, or from othersources in implementations in which, for example, a physician,nutritionist, or other third party is actively participating to provideprofessional input. In certain illustrative implementations, based, forexample, on input from a physician, food consumption thresholds,exercise thresholds and behavioral parameters may be either maintainedor dynamically changed as needed. Exercise, for example, may increasefrom an expenditure of 300 calories per day 3 times per week early inthe process to 500 calories per day, 5 times per week with light weightsby the end of a certain active weight loss process interval. Caloriesmay be advanced at this point from, for example, 1200 per day to 1500per day. In another example, if a behavioral issue exists such that theuser is not doing well adhering to the initially prescribed dietaryregimen, an assessment of the issues contributing to the adherenceproblem can be made and the dietary regimen might be changed for exampleby increasing calories or adding more fruit to help the user improveadherence.

In such implementations where a physician, nutritionist or other thirdparty is providing input (either directly or indirectly through theuser), the routine accesses the user's profile to assess health-relatedinformation received directly or indirectly from a participatingphysician and/or nutritionist and /or healthcare provider including anygenerated thresholds for the user including but not limited to caloricintake, grams of saturated fat, grams of trans fat, milligrams ofcholesterol, milligrams of sodium, grams of carbohydrate dietary fiber,grams of carbohydrate sugar, grams of protein, amounts by percent ofdaily requirement of Vitamin A, Vitamin C, Calcium and Iron, amount ofexercise energy expenditure and other variables related to specificmedical, nutritional and other needs of the user. For example, aphysician may place both food and exercise restrictions on userssuffering from cardiac issues. Checks are made to ensure that anyhealth-related nutritional and exercise thresholds have not beenexceeded. Examples include excess sugar consumption by users who havediabetic or borderline diabetic issues, excess sodium in those withhypertension, excess potassium and protein in those with renal diseaseand exercise limitations in the user with cardiovascular disease.

In an illustrative implementation, such restrictions received eitherdirectly or indirectly from a physician may result in a goal weightmodification recommended by the system to either increase the amount ofweight that should be lost, or slow down the rate at which weight shouldbe lost to decrease stress on the user.

Turning back to FIG. 11, the system sets the restrict flag on anyaffected food(s) or exercise(s) that triggered a restriction warning(226). Such a restrict flag is thereafter associated by the system withany violating food or exercise.

After the processing at block 226 of the restriction-related content ofFIG. 8A, or if the check for a restriction violation indicates thatthere is no known violation to process, a check is made at block 228 todetermine whether a new user weight has been entered by the user. Incertain illustrative implementations, the user is prompted to enter hisor her weight at desired intervals such as on a daily or weekly basis.

If a user has entered a new weight, the newly entered weight is storedin a record associated with the user's profile shown in FIG. 8A and thedaily record shown in FIG. 7B3 is updated to reflect a new “currentweight/date” (224). Thereafter, in this illustrative implementation, thedaily weight flag is set (232), after which, the delta record in FIG.7B4 is updated (236).

After the delta record has been updated, the system displays either aweight loss or weight gain across the current delta time frame (238). Inan illustrative implementation, such a display includes two curves ofexpected weight over the “delta” time period (the user's weightexpectation based on goals that have been set) and calculated weightover the delta time period (the user's weight based on calories burnedless calories consumed), and the user's actual reported weight over thistime frame so that the user can see his or her progress over time andassess the accuracy of the user's reported calories consumed andcalories burned. Additionally, in an illustrative embodiment, an overlayis created to display daily food, exercise, and weight flags so that theuser can see, for example, the regularity with which food and exerciseentries have been made. In an illustrative implementation, if there aremajor gaps in the exercise flag entries, the system generates a displayencouraging the user to exercise more often.

If the check at block 228 indicates that a no new weight has beenentered by the user, then a check is made at block 234 to determinewhether the current day is a new day. If the current day is a new day,then the updating and display processing at blocks 236 and 238 isperformed. The completion of processing after block 238 completes theupdating of the baseline records shown in FIG. 7B.

After the processing at blocks 236 and 238, or if the check at block 234indicates that the current day is not a new day, the display caloriesand goals illustrated in FIG. 10 is generated and displayed to the user.

After the calorie and goal related display has been generated a check ismade at block 242 to determine whether the current day is the last dayof a delta period that is used for goal assessment.

If the current day is the last day of the delta period, then thebaseline record shown in FIG. 7A1 is updated to record the delta weightloss achievement (244). Additionally, a display is generated to show theweight loss or weight gain across all the deltas relating to the user'sgoal (245). In an illustrative implementation, such a display includes,for example, expected, calculated, and actual weight across time and anoverlay showing each day that food, exercise, and weight has beenentered by the user over the delta time period. A display that shows,for example, sparse exercise entries may serve to explain to the userwhy his/her current goal has not been met.

A check is then made at block 246 to determine whether a user's goal hasbeen met. It should be recognized that the system may require, forexample, 100% achievement of a goal weight loss before a reward istargeted for downloading to user. However, in this example, a rewardtrigger signal is generated if the user achieved 95% of the assignedgoal for any delta period based on the check at block 246. Thus, thecheck at block 246 may be used to determine whether the user's overallweight loss goal has been met or whether an interim “subgoal” has beenmet to indicate whether or not the user is on track to reaching his orher overall goal.

The specific percentage assigned as the proper “reward” percentage mayvary based on many factors including the user's past weight losshistory, how close or how far the user is from his or her ideal weight,the user's overall general health, and other factors targeted toproviding the individual user with the optimum amount of effectivemotivation and encouragement.

If the check at block 246 indicates that the required percentage of theuser's goal has been met, the routine generates a goal has been metsignal and transmits such a signal together with goal achievement datato the reward processing routine (241) illustrated in FIG. 14 and thenreturns to the calling routine (243).

If the check at block 246 reveals that the user has achieved, forexample, less than 95% of the assigned “delta” subgoal, processing isinitiated to determine whether there is a need, for example, to changethe final goal or current subgoal that is lower than the originally setgoal depending on various factors, including the degree to which thegoal has been missed and whether the initially assigned goal or subgoalis appropriate for the user given the user's food consumption andexercise performance history.

Daily caloric goals with their associated nutritional requirements mayrequire modification at various points during the weight loss process.These adjustments may be made as a function of the weight loss progress(or lack of progress) as determined by the check at block 246.Alternatively, goals may need to be changed to address issues associatedwith recently developed medical conditions, such as diabetes orhypertension. Exercise goals may need to be changed as the processprogresses. Typically, the amount of daily exercise will need toincrease as weight comes down or specific alterations in type andduration of exercise will be needed based on the progress (or lack ofprogress) of the user. The specific goals of exercise may changethroughout the process from predominantly aerobic, calorie burningexercise at the beginning of the weight loss endeavor to an exerciseregimen that includes more muscle building activity and less aerobicactivity as a user approaches his/her weight goal and transitions into aweight maintenance mode. New goals are displayed to the user on theuser's mobile computing device display as indicated at block 249. Foodor exercise related warnings are displayed to the user (e.g., asindicated at block 224).

In an illustrative implementation, the existing goal may be lowered by adesired increment, for example, 5% or 10% (247). In an illustrativeimplementation, such processing includes prompting the user to indicateif any new unreported injuries, ailments, or handicaps have arisen thatcontributed to the failure to meet a goal or subgoal. If so, the user isprompted to modify his or her user profile to result in a modified newgoal. Such new user profile data may in turn create new food consumptionand exercise related thresholds that may serve as new restrictionsrecorded in the user's profile.

Thereafter, the subgoal values for the delta periods shown in FIG. 7A1are recalculated and modified to reflect the new goal weight loss and/ornew goal anticipated achievement date (248). Thereafter, a new baselinerecord as illustrated in FIG. 7A1 is displayed with the modified,recalculated delta values and goals (249) and the routine branches backto the calling routine (243).

In illustrative implementations, after the goal analysis has beencompleted (during the processing at blocks 241, 246, 247-249), theroutine generates feedback to the user regarding whether goals have beenmet, and provides recommended adjustments that may need to be made withrespect to food consumption or exercise completion, and/or any warningsregarding exceeding physician's/healthcare provider's set thresholds forsuch health-related parameters as sugar intake, daily calorie intake,etc.. Behavioral recommendations are also generated as needed takinginto consideration caloric, nutritional, exercise and other parameters.In an illustrative implementation, for those who are grossly overweightor those who are attempting to stop smoking, congratulatory progressstatements are forwarded with regularity as daily goals are met.

FIGS. 12A and 12B are described below and show two methods that may beused in determining a user's frame size to help converge on the idealweight of a user for any given height that may be used in determining auser's weight loss goal. As an overview, FIG. 12A shows a rule-of-thumbwrist measurement that is relatively accurate, and is otherwise quitesimple for most users to execute—often within 30 seconds. In contrast,FIG. 12B shows the original Met Life elbow method (circa 1942) that wasquite accurate (but only when perfectly executed), but was otherwisequite difficult for most users—largely due to the uncertainty of whatthe correct elbow circumference was. Hence, the present app asks theuser to perform the simpler wrist method.

As noted above, FIGS. 12A and 12B show two methods that may be used indetermining a user's frame size to help converge on the ideal weight forany given height. Bone mass and muscle mass all play a part indetermining optimal weight. This is why ideal weight charts have a rangeof ideal weights for height.

As shown in FIG. 12A, the first method of determining frame size bymeasuring wrist size is an easy method to utilize. The chart shows howsmall/medium/large frames can be differentiated based simply on wristsize. As an intersect between the sexes, at the height of 5′5″, a man'smedium frame equals a woman's large frame, which reinforces the need tokeep Men's weight profiles separate from Women's. It is noted that forwrist sizes over 5′5″ height, Women's Large frame=Men's Medium frame.

FIG. 12B is a table correlating medium frames with the breadth of theelbow. Measuring the breadth of the elbow is harder but gives betteraccuracy. The chart in FIG. 12B shows the limits of the medium rangebased on elbow size, beyond which is large frame and below which issmall frame. This original Met Life procedure was very accurate but hardto follow, so it tended to be glossed over, making the rule-of-thumbWrist method even more appealing. As an intersect between the sexes,within medium frames, the elbow size of a man as short as 4 ′10″ isequal to the elbow size of a woman over 6 feet tall, which reinforcesthe need for an accurate DB that can discriminate down to frame sizes.It is noted here that, as an anomaly for Medium Frames, the elbow sizeof Women over 6′0″=Men at 4′10″−4′11″.

The elbow size measurement involves the following steps:

-   Start in a standing position:-   Hold out your arm so that it's horizontal and parallel to the floor-   Make sure that your palm is facing upward-   Then bend your elbow so your forearm is at ninety degrees to the    floor-   Use your index finger and thumb of opposite hand to find the narrow    part of your elbow joint-   Use your finger and thumb like a gauge to find the breadth of your    elbow-   Do this by measuring the gap in between them with a ruler or    measuring tape.

FIG. 12C provides a simple, efficient rule-of-thumb method fordetermining a user's obesity level from the size of his/her waist, muchlike the wrist circumference method above, and just as easy to measurein one minute. FIG. 12C shows a 2010 chart (LH side) that demonstrateshow Waist Size plots virtually identical to Weight in the popular 1995USDA chart (RH side). This variation is a further example of howpervasive the USDA chart has become across 15 years. Just as the USDAchart plots height vs weight, the Waist Size chart plots height vs waistsize, yielding a chart that is remarkably similar in the 3 boundarylines, and the configuration of the 4 weight slices they demarcate:

-   the RH severe overweight slice==>matches the LH “Action” slice-   the RH overweight slice==>matches the LH “Take Care” slice-   the RH healthy weight slice==>matches the LH dark “OK” slice-   the RH underweight slice==>matches the left-most “Take Care” slice-   the RH height runs 40 10″-6′6″==>the LH height runs 4′5″-6′7′5″-6′7″-   the RH weight runs 50-250 lbs==>the LH waist size runs 18- 50″

In the USDA Chart generated in 1995, BMI has been utilized to determinethe line between obesity and healthy weight. However, using BMI as thedetermining factor belies the significance of the underlying BMIequation (weight/height²×703) and the fact it ignores the hugeweight-per-height gap between Men and Women that was prominentlydeclared for 50 years by its predecessor, the Met Life Table. In fact,the oversimplified BMI calculation itself (weight/height²×703) isfatally flawed in that it does not require any measurement of actualbody fat, but rather, wrongly assumes any excess weight above averagefor a given height is due to fat rather than muscle.

Given that the general definition of obese (for the Met Life table) issomeone whose weight is 20% more than their ideal weight, this basic BMIflaw alone inflates the obesity rate of most countries by addingvirtually every muscular athlete with <20% body fat to its obesitygroup—men and women who are by definition among the healthiest specimenson the planet—a factor that is partially accounted for by Met Life'swise expansion into body frames and frame overlaps.

FIG. 13A shows an overlay of the prior art Met Life Table on the priorart USDA Chart that reveals how far apart these 2 baseline standards arefor tall Women and all Men. As can be quickly visualized here in FIG.13A, the Met Life profile for Women (solid black line) roughly matchesup with the Chart's healthy weight slice (within +/−1.2%)—whereas, instark contrast, Met Life's similarly-shaped profile for Men (dottedblack line) is uniformly shifted right by 18 pounds at the base. Thebase spans the entire width of the center moderate weight slice, whilethe top of the Men's profile shifts left to span the entire healthyweight slice. This chart shows how closely the 1995 USDA chart trackedthe original 1983 Met Life data for women and exactly how far up theweight scale men should have been plotted. An average error of +/−1.2%for women and a +8.3% average increase required for men.

This separation of the Men's profile (by 18 pounds upstream) from theWomen's profile appears to confirm that the ultra-low healthy weightslice of the USDA Chart is entirely demarcated for Women, and as such isgenerally beyond the reach of Men. It is noted that the Chart and Tableprofiles for Women intersect at 5′9.″

FIG. 13B shows how Met Life profiles can be rotated 6° arond a commonpivot point with the Chart (at 5′9″) to yield a more realistic idealmodel for all Men and Women. The Met Life plot is better adapted toshorter people form 4 feet, 10 inches to five feet, four inches than the1995 USDA weight chart. The USDA plot is better adapted to taller people5 foot, 11 inches to 6 feet, 6 inches than the data in the Met Lifeplot. In these charts, women benefit most at the low end and men benefitmost at the high end. In FIG. 13B, the Met Life data plotted in FIG. 13Ais rotated clockwise at a five feet, nine inch pivot point to match upwith the USDA chart. The database shown in FIG. 13C absorbs the best ofboth worlds, from Table to Chart:

-   Bottom Half (4′10″==>5′9″) The time-honored independent Met Life    profiles for both Women and Men were adopted exactly as shown in    FIG. 13A. This new weight regime resolves the worst differences and    complaints at both extremes:    -   Leading Edge: Studies reveal that Japanese Women still falls        within the profile, but now correctly at the leading edge—i.e.,        the Chart values are so severe at the low end that no one in the        world (but Japanese women) can achieve them        -   the same holds true for Japanese Men who are now correctly            positioned right at the leading edge among all men (with the            world-lowest 3.2% obesity)    -   Trailing Edge: Studies reveal that Italian Men/Women correctly        shifted to the center of their respective healthy weight slices        (at a very low 8.5% obesity)        -   similarly, the German Men/Women are correctly shifted just            inside their respective healthy weight slices (at a            reasonable 12.9% obesity)        -   the Canadian Men/Women are correctly remained just inside            the new, more narrow moderate weight slice (at            weighted-average 14.3% obesity)        -   the American Men/Women remained unmoved from their            precarious perch just inside the severe weight slice (at            world-worst 33.9% obesity)-   Top Half (5′9″==>6′6″) This half was adopted from the more modern    USDA Chart profile for Women, while the wholly independent Met Life    profile for Men was adapted to the more relaxed slope of the Chart,    exactly as shown in FIG. 13A. This weight regime will resolve the    worst differences/complaints at both extremes:    -   Leading Edge: the worst-case extreme here is the Men's MIN up at        6′6″ (small frame) where, according to the Chart, a 6′6″ male is        still healthy at 165 lbs        -   But this weight is not achievable even by tall Dutchmen (at            low 10% obesity) who are already up to 195 lbs @ 6′1″            (world's tallest avg height), whereas the Dutch women reach            165 lbs @ 5′8″ (avg), but they're 10 inches shorter than            6′6″        -   Thus, the Men's MIN becomes more realistic shifted up by 13            lbs to 178 lbs    -   Trailing Edge: Only the German Men at 5′10″ were affected here        by the 6° CW rotation (around the pivot point at 5′9″)—the GM is        now correctly shifted just inside the trailing edge, which        exactly matches the position of GW

The upper-level weights are now achievable by tall men. This has beenthe most contentious area in the Met Life Tables—namely, they do notaccount for men taller than their 1942 model that are heavier but stillhealthy e.g., the 1983 Met Life table sets a healthy large-frame 6′1″ USmale @ 192 lbs whereas, with the upgraded profile, he can now aim atmore achievable 200 lbs.

In fact, the Dutch Men and Dutch Women (cited above) actually confirmthe validity of both new profiles for Men/Women since, at their very lowobesity rate (10%) they clearly qualify to appear in the Healthy Weightslice of the USDA Chart. This can be easily visualized by comparingwhere they map into the new profiles (overlaid on FIG. 13B) to wherethey'd plot in the old profiles (FIG. 13A):

Case in Point for Tall Men: Comparison of 2012 Profiles with earlierProfiles (based on BMI) Extreme Example: Extreme Example: EarlierMen/Women Profiles 2012 Profiles Very Low Obesity Tallest in the WorldFIG. 13A FIGS. 13B/13C The Netherlands Height* Weight BMI** Weight SliceWeight Slice Dutch Men (DM) 6′1″ * 195 lbs 25.7** >192 Moderate <200Healthy Dutch Women (DW) 5′8″ * 165 lbs 22.6 =165 Healthy (?) <167Healthy •Dutch Men and Women are the tallest in the world (passed the US50 years ago) **At their very low obesity rate (10%), both DM/DW easilyqualify as Healthy but Dutch Men get a Moderate ranking due to theirskewed BMI @ 25.7 because BMI can't distinguish any natural weightincrease due to muscle mass in tall men

By embracing this extreme—the tallest healthy Men/Women in theworld—this case in point confirms another significant way thenewly-configured profiles for Men and Women have improved over the USDAChart and Met Life Table. Moreover, this upgrade for taller men becomesall the more significant in light of the spiraling growth of sports,from recreational to competitive, worldwide—and the parallel explosionof fit athletes who play the sports, but are rated obese.

Unique Database (DB) to Calculate Ideal Weight vs. Height

In accordance with an illustrative implementation, a user's weight goalmay be selected based upon the ideal weight database shown in FIG. 13C1.In an illustrative implementation, the system may select a weight goalfor the user based upon the FIG. 13C1 ideal weight database describedbelow using user profile entries of height, weight, gender, and framesize (taking into account waist and wrist size (see FIGS. 12A/12B)) asillustrated in FIG. 8A).

In determining a user's goal weight, FIG. 13C1 depicts in a table formatan illustrative new and improved system database relating a user'sheight to a healthy “ideal” weight for a range of small, medium, andlarge frame minimum and maximum weight values for both men and women.The illustrative weight, nutrition, and exercise tracking system that isdedicated to helping today's users get healthier and/or lose weightpresents a unique answer to the age-old question . . . exactly what isan “ideal” weight for a given user height? The database shown in FIG.13C1 takes into account various generic factors that may affect theuser's weight, such as gender, body frame (small/medium/large) andrelative level of obesity. In an illustrative implementation, thedatabase is advantageously designed to assist in calculating smallincrements of weight loss that can eventually lead an overweight user toa goal within his or her reach. The database shown in FIG. 13C1 isaccessed in part by using wrist size to differentiate body frame andwaist size to differentiate obesity level.

This new database has been derived by selectively reconciling andintegrating the most historically reliable sources of height vs. weightdata still in widespread use today:

-   Metropolitan Life Table (Met Life table), from their 1942 life    expectancy data (updated 1983)    But, this aging data falls short of today's taller, heavier bodies    that are still healthy-   USDA CNPP center Chart, from their 1995 obesity data (and Met Life    Table).

The Met Life table has become a standard that is still widely used fordetermining recommended body weights. This table has been criticized forvaried reasons:

-   Insured people tend to be healthier than uninsured people-   The people included were predominantly white and middle-class-   Frame size was not consistently measured-   Some people were actually weighed, some were not-   The table did not consider percentage of body fat or distribution-   The table is considered okay for people in their forties, but the    weights are too heavy for younger people and too light for older    people.    Yet despite all these caveats, the table has continued to serve as a    worldwide standard together with updated versions of this table.

The database of FIG. 13C1 has been designed to take into account suchcriticisms of the Met Life table and to accommodate taller, healthy menand women, in that the Table has been extended up to 6′2″ for women andup to 6′6″ (and down to 4′10″) for men by interpolation. Further, thepresent DB has been designed to classify large/small-bone people intheir correct frame size, which becomes important in taking into accountthe differences between men and women. Thus, the ideal weight databasehas been customized by the melding of Met Life tables, demographic data,frame size, body mass index, etc. While this approach has not beenclinically proven or tested, it is presented as an illustrativeimplementation of a highly useful tool in determining a user's idealweight that is tailored to individual users in a unique manner.

FIG. 13C1 ties together the above Tables/Charts into a single 2012 DBthat integrates MIN/MAXframes (scaled up from 1983 Met Life Table)within MIN healthy/moderate edges (rotated/shifted from 1995 USDA Chart)that allows the system to provide an ideal weight (nearest lb) matchedprecisely to a user's exact height (nearest ¼″) for both Men (left side)and Women (right side). This Table reflects Ideal Weight per Body Frameaccording to Met Life data (updated 1983), with new MIN boundaries perFIG. 13B (updated 2012).

Unless separated by their naturally higher weights, men have beenimproperly lumped into impossible for many to reach lower weightprofiles for women. The 2012 updates include reconfigured “healthyweight” slices, now separated for men and women, as redefined in thecompare columns in FIG. 13C. The aging Met Life data is still valuablefor its min/max ranges that were scaled up to define all 3 body frameswithin the expanded 2012 weight deltas.

In effect, the Chart of FIG. 13B plus Table 13C1 tie together data,indicators, and lessons learned from published data from variouscountries taking into account median age, obesity rate, height andweight in the spectrum of healthy to obese data for men and women, theMet Life table, the USDA weight chart and updates thereto.

In effect, Chart 13B/Table 13C1 tie together data:

-   For 5 Major Countries:-   Median Age==>Obesity Rate==>Height and Weight-   Ideal Weight vs. Height in the spectrum of Obese==>Healthy-   For individual Men/Women:-   As shown in the table, the 2012 Database Table 13C1 comprises    modified primary data values

2012 DB 1995 USDA Chart 1983 Met Life Table Upgrades Men Women Men WomenSeparate Sexes Heavier Profile Lighter Profile — — into 2 DistinctProfiles (entirely new) (existing) (existing) (existing) Expand Height —— Up to 6′ 6″ Up to 6′ 6″ Up/Down (existing) (existing) Down to 4′ 10″ —(per FIG. 13C) Discriminate Height Rotate Medium Rotate Medium RotateTall 6° to Rotate Tall 6° to on Tall/Medium/Short and Short-8° to andShort-8° to Heavier Weight Heavier Weight (per FIG. 13B) Heavier WeightHeavier Weight (NA below) (NA below) Distinguish Body Frame Add 2 moreAdd 2 more (existing) (existing) on Small/Medium/Large ranges betweenranges between scale values up scale values up (per FIG. 12A) Min/Maxedges Min/Max edges per FIG. 13C per FIG. 13C Determine Body Frame viaWrist/elbow via Wrist/elbow via Wrist/elbow via Wrist/elbowSmall/Medium/Large (per FIG. 12A) (FIG. 12A) (elbow existing) (elbowexisting) Determine Obesity Level via Waist Size via Waist Size viaWaist Size via Waist Size Healthy/Moderate/Severe (per FIG. 12C) (FIG.12C) (per FIG. 12C) (per FIG. 12C)

FIG. 13C2 is a chart showing boundary equations that may be used toidentify the ideal weight for men and women shown in FIG. 13C. Moreparticularly, FIG. 13C2 shows step-wise linear equations for both menand women that identify the boundaries in the ideal weight chart of FIG.13C for a healthy weight minimum and moderate weight minimum based onthe two height ranges of 5 feet, 9 inches to 6 feet, 6 inches and 4feet, 10 inches to 5 feet, 9 inches.

FIG. 14 is a flowchart delineating the sequence of operations in anillustrative implementation of reward processing. Upon entry into rewardprocessing (250), the routine checks to determine whether a “goal hasbeen met” signal has been received from an identified user by, forexample, reward server 16 (252). In an illustrative implementation, anygoal being met may trigger an award generation including weight-relatedgoals, exercise-related goals and smoking cessation-related goals. If nosuch signal has been received from any mobile computing device in thesystem, the reward processing routine awaits receipt of such a signal.

In the example shown in FIG. 14, it is contemplated that a reward isautomatically generated without any selection by user. It should beunderstood, however, that in other implementations, the user may beinvolved in selecting a desired reward.

If an identified user's goal has been met, the routine determines theextent to which the goal has been exceeded (254). Such a determinationmay be made in an illustrative implementation based on data transmittedfrom server 14 regarding the user's goal achievement.

It should be understood that a reward may be embodied in a wide varietyof forms. It is contemplated, without limitation, that, for example,rewards may be in the form of downloaded music, movies, digital versionsof TV shows, music videos, cash, discounts at movies, restaurants(particularly those that include a wide range of healthy alternatives),discounts at sporting events, mobile games, mobile gaming currency,other mobile applications, etc.

In an illustrative implementation, a reward is selected based upon theextent to which a goal being exceeded (256). Thus if a user exceedsweight loss goals in a given month by, for example, 20 pounds or hasstopped smoking for a predetermined extended, time period, the user mayreceive a movie as a reward as opposed to receiving downloaded music. Inorder to provide adequate motivation for users, it is desirable toprovide rewards as soon as it is determined that a goal has beenexceeded. For example, in an illustrative implementation, if a userexceeds a daily food consumption, smoking cessation, or exercise goal,the system may reward such performance, by automatically downloadingmusic of the type to which the user has shown an inclination to listen.

In accordance with an illustrative implementation, the system accessesone or more of the user's playlists (258). For example, users of theiPhone often utilize the iTunes application to download music of theirchoice. Accessing of the playlist associated with the user's use ofiTunes will reveal a great deal of information regarding the user'slistening and viewing preferences. For example, by accessing such aplaylist or the like, it may be determined that the user has aparticular preference for '90's music, classical music, music videostogether with the particular selections within those and othercategories. Moreover, it may be determined which selections are theuser's top-rated, recently added , top 25 and most recently playedselections. Further, the user's preferences with respect to movies, TVshows and other entertainment preferences may be determined.

Based upon an analysis of such data from iTunes, the routine may selecta particular song which is likely to be appreciated by the user since,for example, it is performed by an artist who has been identified in theplaylist as the performer of one of the user's top-rated songs (260). Inthis example, such a song may be downloaded upon the user meeting adaily goal. In other implementations, the routine may select up to threesongs for the user to choose from; a similar approach may be used for TVshows, movies, or other reward options. If, for example, a user meets aweekly or monthly goal, a selected TV show or movie may be downloaded tothe user as a reward. Alternatively, one of the other above identifiedwide range of rewards, such as a discount coupon to an entertainment orsporting event may be downloaded.

If for example, a song has been selected for downloading, the routinemay interact with the iTunes store to trigger downloading such a song tothe user to provide the user's reward for goal achievement (262).Thereafter, the routine returns to the mainline routine of FIG. 2A forfurther processing (263).

While the invention has been described in connection with what ispresently considered to be the most practical and preferred embodiment,it is to be understood that the invention is not to be limited to thedisclosed embodiments, but on the contrary, is intended to cover variousmodifications and equivalent arrangements included within the spirit andscope of the submitted claims.

1. A method of operating a mobile weight and exercise tracking computingsystem including a processing subsystem, a GPS receiver, a storagesubsystem, and a touchscreen display, said GPS receiver, said storagesubsystem and said touchscreen display being operatively coupled to saidprocessing subsystem, comprising: storing, in said storage subsystem,health information about a user, including a daily calorie-related goal;storing, in said storage subsystem, data relating to a plurality ofuser-selectable exercises; storing, in said storage subsystem, datarelating to a plurality of user-selectable foods including nutrientinformation and information related to a plurality of said user'sfavorite foods; generating a display of breakfast, lunch, and dinnermeal categories for said user to select a specific meal category;accessing said storage subsystem, in response to the user selecting aspecific meal category, and generating a list of favorite foods relatedto the selected meal category; displaying said list of favorite foodsrelated to the selected meal category on said touchscreen display to aidin user food data entry; identifying, from said list of favorite foodsdisplayed on said touchscreen display, a first favorite food in responseto said user selecting said first favorite food from said list offavorite foods; determining, by said processing subsystem, dataindicative of the calories consumed by said user as a result of eatingsaid first favorite food; displaying, on said touchscreen display, saiddata indicating the calories consumed by said user as a result of eatingsaid first favorite food; acquiring, via said touchscreen display, dataindicative of an exercise performed, in response to said useridentifying a first exercise; determining, by said processing subsystem,the calories burned by said user as a result of performing said firstexercise; displaying, on said touchscreen display, said calories burnedduring said first exercise, and displaying a color code indicative ofthe nutritional content of a nutrient in said first favorite food.
 2. Amethod of operating a mobile weight and exercise tracking computingsystem according to claim 1, further including determining an idealweight for said user, taking into account the user's gender, height, andframe size; and storing said ideal weight for said user in said storagesubsystem.
 3. A method of operating a mobile weight and exercisetracking computing system according to claim 1, further includingstoring a weight database in said storage subsystem relating user heightto a desired weight for a range of body frame sizes.
 4. A method ofoperating a mobile weight and exercise tracking computing systemaccording to claim 1, further including associating a digital valueindicative of a first health-related color code associated with a firstnutrient in said first food and a second digital value indicative of asecond health-related color code associated with a second nutrient insaid first food, wherein said first and second color codes reflect ahealth rating of said first food.
 5. A method of operating a mobileweight and exercise tracking computing system according to claim 1,wherein said mobile weight and exercise tracking computing device,wherein said data indicative of an exercise performed by said user isgenerated based, in part, upon device location data generated by saidGPS receiver.
 6. A method of operating a mobile weight and exercisetracking computing system according to claim 1, wherein said processingsubsystem includes a behavioral subsystem, further including generatingat least one question about the user's diet, receiving input in responseto said at least one question from said user relating to the user'sdiet, and generating recommendations in response to the user's input viasaid touchscreen.
 7. A method of operating a mobile weight and exercisetracking computing system according to claim 1, further includingdetermining if a food or exercise-related goal has been met by said userbased at least in part on calories consumed and/or calories burned bysaid user, wherein said processing subsystem includes a rewardgenerating subsystem, and wherein said method further includesautomatically selecting a reward for said user based on data relating toexpected calories consumed and/or calories burned by said user.
 8. Amethod of operating a mobile weight and exercise tracking computingsystem including a processing subsystem, a GPS receiver, a storagesubsystem, and a touchscreen display, said GPS receiver, said storagesubsystem and said touchscreen display being operatively coupled to saidprocessing subsystem, for enhancing user goal achievement comprising:storing, in said storage subsystem, health information about a userincluding a daily calorie-related goal; acquiring data, via saidtouchscreen display, related to a first food, in response to said useridentifying a first food expected to be consumed by said user;associating, by said processing subsystem, a digital value indicative ofa health-related color code rating of said first food using multiplecolors to distinguish between multiple categories of foods, including avery healthy food category covering foods having a very highnutrient-related rating and a good food category covering foods with agood nutrient-related rating but which are rated lower than the veryhealthy foods with a very high nutrient-related rating; determining,whether said first food expected to be consumed by the user has anassociated color code from a category other than said very healthy foodcategory; displaying to said user at least one food together with acolor code in a healthier color code category than said first food, ifsaid determining step indicates that said first food has an associatedcolor code that is not as high as said very healthy food category;acquiring data, via said touchscreen display, indicative of a firstexercise in response to said user identifying a first exercise expectedto be performed by said user; determining the calories expected to beburned by said user during said first exercise; and displaying to saiduser information about calories expected to be consumed, or caloriesexpected to be burned.
 9. A method according to claim 8, furtherincluding the step of associating a digital value indicative of ahealth-related color code rating of said first exercise using multiplecolors to distinguish between multiple health-related categories ofexercises, including a very healthy exercise category covering exerciseswith a very high health-related rating and a good exercise categorycovering exercises that have a good health-related rating but which arerated lower than exercises with a very high health-related rating, andfurther including: determining whether said first exercise expected tobe performed by the user has an associated color code other than thecolor code for a very healthy exercise, and displaying to said user atleast one exercise together with a color code that is in a healthiercolor code category than the color code associated with said firstexercise, if said first exercise was determined to be in a categoryother than said very healthy exercise category.
 10. A method accordingto claim 8, further including: inputting by said user a first set offoods constituting a meal; associating each food that has been input aspart of a meal with a digital color code using multiple colors todistinguish between categories of very healthy foods and moderatelyhealthy foods; determining whether any of the foods expected to beconsumed by the user had an associated color code from a category otherthan a very healthy food category, displaying to said user at least onefood together with a color code that is in a healthier color codecategory if it is determined that a food expected to be consumed as partof said meal had an associated color code indicative of other than avery healthy food.